@@ -3,6 +3,7 @@ extern crate time_ as time;
3
3
use std:: borrow:: Cow ;
4
4
use std:: net:: SocketAddr ;
5
5
use std:: ops:: Bound ;
6
+ use std:: rc:: Rc ;
6
7
use std:: sync:: Arc ;
7
8
8
9
use sqlx:: postgres:: types:: { Oid , PgCiText , PgInterval , PgMoney , PgRange } ;
@@ -664,7 +665,7 @@ CREATE TEMPORARY TABLE user_login (
664
665
async fn test_arc ( ) -> anyhow:: Result < ( ) > {
665
666
let mut conn = new :: < Postgres > ( ) . await ?;
666
667
667
- let user_age: Arc < i32 > = sqlx:: query_scalar ( "select $1 as age " )
668
+ let user_age: Arc < i32 > = sqlx:: query_scalar ( "SELECT $1 AS age " )
668
669
. bind ( Arc :: new ( 1i32 ) )
669
670
. fetch_one ( & mut conn)
670
671
. await ?;
@@ -678,7 +679,7 @@ async fn test_cow() -> anyhow::Result<()> {
678
679
679
680
let age: Cow < ' _ , i32 > = Cow :: Owned ( 1i32 ) ;
680
681
681
- let user_age: Cow < ' static , i32 > = sqlx:: query_scalar ( "select $1 as age " )
682
+ let user_age: Cow < ' static , i32 > = sqlx:: query_scalar ( "SELECT $1 AS age " )
682
683
. bind ( age)
683
684
. fetch_one ( & mut conn)
684
685
. await ?;
@@ -691,11 +692,24 @@ async fn test_cow() -> anyhow::Result<()> {
691
692
async fn test_box ( ) -> anyhow:: Result < ( ) > {
692
693
let mut conn = new :: < Postgres > ( ) . await ?;
693
694
694
- let user_age: Box < i32 > = sqlx:: query_scalar ( "select $1 as age " )
695
+ let user_age: Box < i32 > = sqlx:: query_scalar ( "SELECT $1 AS age " )
695
696
. bind ( Box :: new ( 1 ) )
696
697
. fetch_one ( & mut conn)
697
698
. await ?;
698
699
699
700
assert ! ( user_age. as_ref( ) == & 1 ) ;
700
701
Ok ( ( ) )
701
702
}
703
+
704
+ #[ sqlx_macros:: test]
705
+ async fn test_rc ( ) -> anyhow:: Result < ( ) > {
706
+ let mut conn = new :: < Postgres > ( ) . await ?;
707
+
708
+ let user_age: i32 = sqlx:: query_scalar ( "SELECT $1 AS age" )
709
+ . bind ( Rc :: new ( 1i32 ) )
710
+ . fetch_one ( & mut conn)
711
+ . await ?;
712
+
713
+ assert ! ( user_age == 1 ) ;
714
+ Ok ( ( ) )
715
+ }
0 commit comments