@@ -9,12 +9,14 @@ use diesel::{
99use diesel_async:: RunQueryDsl ;
1010use http:: StatusCode ;
1111use syncserver_common:: Metrics ;
12- use tokenserver_db_common:: { Db , DbError , DbResult , params, results} ;
12+ #[ cfg( debug_assertions) ]
13+ use tokenserver_db_common:: TestDb ;
14+ use tokenserver_db_common:: { BaseDb , DbError , DbResult , params, results} ;
1315
1416use super :: TokenserverDb ;
1517
1618#[ async_trait( ?Send ) ]
17- impl Db for TokenserverDb {
19+ impl BaseDb for TokenserverDb {
1820 async fn get_node_id ( & mut self , params : params:: GetNodeId ) -> DbResult < results:: GetNodeId > {
1921 const QUERY : & str = r#"
2022 SELECT id
@@ -375,7 +377,32 @@ impl Db for TokenserverDb {
375377 self . timeout
376378 }
377379
378- #[ cfg( debug_assertions) ]
380+ async fn insert_sync15_node ( & mut self , params : params:: Sync15Node ) -> DbResult < bool > {
381+ let query = format ! (
382+ r#"
383+ INSERT IGNORE INTO nodes (service, node, available, current_load, capacity, downed, backoff)
384+ VALUES (
385+ (SELECT id FROM services WHERE service = '{}'),
386+ ?, ?, 0, ?, 0, 0
387+ )
388+ "# ,
389+ params:: Sync15Node :: SERVICE_NAME
390+ ) ;
391+
392+ let affected_rows = diesel:: sql_query ( query)
393+ . bind :: < Text , _ > ( & params. node )
394+ . bind :: < Integer , _ > ( params. capacity )
395+ . bind :: < Integer , _ > ( params. capacity )
396+ . execute ( & mut self . conn )
397+ . await ?;
398+
399+ Ok ( affected_rows == 1 )
400+ }
401+ }
402+
403+ #[ cfg( debug_assertions) ]
404+ #[ async_trait( ?Send ) ]
405+ impl TestDb for TokenserverDb {
379406 async fn set_user_created_at (
380407 & mut self ,
381408 params : params:: SetUserCreatedAt ,
@@ -393,7 +420,6 @@ impl Db for TokenserverDb {
393420 Ok ( ( ) )
394421 }
395422
396- #[ cfg( debug_assertions) ]
397423 async fn set_user_replaced_at (
398424 & mut self ,
399425 params : params:: SetUserReplacedAt ,
@@ -411,7 +437,6 @@ impl Db for TokenserverDb {
411437 Ok ( ( ) )
412438 }
413439
414- #[ cfg( debug_assertions) ]
415440 async fn get_user ( & mut self , params : params:: GetUser ) -> DbResult < results:: GetUser > {
416441 const QUERY : & str = r#"
417442 SELECT service, email, generation, client_state, replaced_at, nodeid, keys_changed_at
@@ -426,29 +451,6 @@ impl Db for TokenserverDb {
426451 Ok ( result)
427452 }
428453
429- async fn insert_sync15_node ( & mut self , params : params:: Sync15Node ) -> DbResult < bool > {
430- let query = format ! (
431- r#"
432- INSERT IGNORE INTO nodes (service, node, available, current_load, capacity, downed, backoff)
433- VALUES (
434- (SELECT id FROM services WHERE service = '{}'),
435- ?, ?, 0, ?, 0, 0
436- )
437- "# ,
438- params:: Sync15Node :: SERVICE_NAME
439- ) ;
440-
441- let affected_rows = diesel:: sql_query ( query)
442- . bind :: < Text , _ > ( & params. node )
443- . bind :: < Integer , _ > ( params. capacity )
444- . bind :: < Integer , _ > ( params. capacity )
445- . execute ( & mut self . conn )
446- . await ?;
447-
448- Ok ( affected_rows == 1 )
449- }
450-
451- #[ cfg( debug_assertions) ]
452454 async fn post_node ( & mut self , params : params:: PostNode ) -> DbResult < results:: PostNode > {
453455 const QUERY : & str = r#"
454456 INSERT INTO nodes (service, node, available, current_load, capacity, downed, backoff)
@@ -471,7 +473,6 @@ impl Db for TokenserverDb {
471473 Ok ( result)
472474 }
473475
474- #[ cfg( debug_assertions) ]
475476 async fn get_node ( & mut self , params : params:: GetNode ) -> DbResult < results:: GetNode > {
476477 const QUERY : & str = r#"
477478 SELECT *
@@ -486,7 +487,6 @@ impl Db for TokenserverDb {
486487 Ok ( result)
487488 }
488489
489- #[ cfg( debug_assertions) ]
490490 async fn unassign_node (
491491 & mut self ,
492492 params : params:: UnassignNode ,
@@ -507,7 +507,6 @@ impl Db for TokenserverDb {
507507 Ok ( ( ) )
508508 }
509509
510- #[ cfg( debug_assertions) ]
511510 async fn remove_node ( & mut self , params : params:: RemoveNode ) -> DbResult < results:: RemoveNode > {
512511 const QUERY : & str = "DELETE FROM nodes WHERE id = ?" ;
513512
@@ -518,7 +517,6 @@ impl Db for TokenserverDb {
518517 Ok ( ( ) )
519518 }
520519
521- #[ cfg( debug_assertions) ]
522520 async fn post_service (
523521 & mut self ,
524522 params : params:: PostService ,
@@ -540,7 +538,6 @@ impl Db for TokenserverDb {
540538 Ok ( result)
541539 }
542540
543- #[ cfg( debug_assertions) ]
544541 fn set_spanner_node_id ( & mut self , params : params:: SpannerNodeId ) {
545542 self . spanner_node_id = params;
546543 }
0 commit comments