|
1 |
| -{ |
2 |
| - let name = uuid::Uuid::new_v4().to_string(); |
| 1 | +{ |
| 2 | + let qry = "UNWIND [1, 2] AS x RETURN x"; |
| 3 | + |
3 | 4 | let mut txn = graph.start_txn().await.unwrap();
|
4 | 5 |
|
5 |
| - #[derive(serde::Deserialize)] |
6 |
| - struct Person { |
7 |
| - name: String, |
8 |
| - } |
9 |
| - |
10 |
| - txn.run_queries([ |
11 |
| - query("CREATE (p { name: $name })").param("name", name.clone()), |
12 |
| - query("CREATE (p { name: $name })").param("name", name.clone()), |
13 |
| - ]) |
14 |
| - .await |
15 |
| - .unwrap(); |
16 |
| - |
17 |
| - //start stream_one |
18 |
| - let mut stream_one = txn |
19 |
| - .execute(query("MATCH (p {name: $name}) RETURN p").param("name", name.clone())) |
20 |
| - .await |
21 |
| - .unwrap(); |
| 6 | + // start stream_one |
| 7 | + let mut stream_one = txn.execute(qry).await.unwrap(); |
22 | 8 | let row = stream_one.next(txn.handle()).await.unwrap().unwrap();
|
23 |
| - assert_eq!(row.to::<Person>().unwrap().name, name); |
| 9 | + assert_eq!(row.to::<i64>().unwrap(), 1); |
24 | 10 |
|
25 |
| - //start stream_two |
26 |
| - let mut stream_two = txn.execute(query("RETURN 1")).await.unwrap(); |
| 11 | + // start stream_two |
| 12 | + let mut stream_two = txn.execute(qry).await.unwrap(); |
27 | 13 | let row = stream_two.next(txn.handle()).await.unwrap().unwrap();
|
28 | 14 | assert_eq!(row.to::<i64>().unwrap(), 1);
|
29 | 15 |
|
30 |
| - //stream_one is still active here |
| 16 | + // stream_one is still active here |
31 | 17 | let row = stream_one.next(txn.handle()).await.unwrap().unwrap();
|
32 |
| - assert_eq!(row.to::<Person>().unwrap().name, name); |
| 18 | + assert_eq!(row.to::<i64>().unwrap(), 2); |
| 19 | + |
| 20 | + // as is stream_two |
| 21 | + let row = stream_two.next(txn.handle()).await.unwrap().unwrap(); |
| 22 | + assert_eq!(row.to::<i64>().unwrap(), 2); |
33 | 23 |
|
34 |
| - //stream_one completes |
| 24 | + // stream_one completes |
35 | 25 | assert!(stream_one.next(txn.handle()).await.unwrap().is_none());
|
36 |
| - //stream_two completes |
| 26 | + |
| 27 | + // stream_two completes |
37 | 28 | assert!(stream_two.next(txn.handle()).await.unwrap().is_none());
|
| 29 | + |
| 30 | + // commit the transaction |
38 | 31 | txn.commit().await.unwrap();
|
39 | 32 | }
|
0 commit comments