File tree Expand file tree Collapse file tree 1 file changed +36
-0
lines changed
Expand file tree Collapse file tree 1 file changed +36
-0
lines changed Original file line number Diff line number Diff line change @@ -382,3 +382,39 @@ fn select_star_and_subquery_field_builds() {
382382 "SELECT *, (SELECT recent FROM sessions ORDER BY ts DESC LIMIT 1) FROM users"
383383 ) ;
384384}
385+
386+ #[ test]
387+ fn explain_simple_builds ( ) {
388+ let sql = QueryBuilder :: select ( surrealex:: fields!( "id" ) )
389+ . from ( "users" )
390+ . explain ( )
391+ . build ( ) ;
392+ assert_eq ! ( sql, "SELECT id FROM users EXPLAIN" ) ;
393+ }
394+
395+ #[ test]
396+ fn explain_full_builds ( ) {
397+ let sql = QueryBuilder :: select ( surrealex:: fields!( "id" ) )
398+ . from ( "users" )
399+ . explain_full ( )
400+ . build ( ) ;
401+ assert_eq ! ( sql, "SELECT id FROM users EXPLAIN FULL" ) ;
402+ }
403+
404+ #[ test]
405+ fn where_order_limit_fetch_with_explain_full_builds ( ) {
406+ let sql = QueryBuilder :: select ( surrealex:: fields!( "id" ) )
407+ . from ( "users" )
408+ . r#where ( "active = true" )
409+ . order_by ( "name" , Sort :: Asc )
410+ . limit ( 10 )
411+ . start_at ( 5 )
412+ . fetch ( vec ! [ "profile" ] )
413+ . explain_full ( )
414+ . build ( ) ;
415+
416+ assert_eq ! (
417+ sql,
418+ "SELECT id FROM users WHERE active = true ORDER BY name ASC LIMIT 10 START AT 5 FETCH profile EXPLAIN FULL"
419+ ) ;
420+ }
You can’t perform that action at this time.
0 commit comments