@@ -126,16 +126,16 @@ def check_model(self, model, database, mock_post):
126126 f'Finetune { model .project .name } .{ model_name } FROM d1 (select a from t1)'
127127 )
128128
129- model .retrain (query , options = { 'x' : 2 })
129+ model .retrain (query , options = {'x' : 2 })
130130 check_sql_call (
131131 mock_post ,
132132 f'RETRAIN { model .project .name } .{ model_name } FROM { query .database } ({ query .sql } ) USING x=2'
133133 )
134134
135- model .retrain ('select a from t1' , database = 'd1' )
135+ model .retrain ('select a from t1' , database = 'd1' , engine = 'openai' )
136136 check_sql_call (
137137 mock_post ,
138- f'RETRAIN { model .project .name } .{ model_name } FROM d1 (select a from t1)'
138+ f'RETRAIN { model .project .name } .{ model_name } FROM d1 (select a from t1) USING engine= \' openai \' '
139139 )
140140
141141 # describe
@@ -183,9 +183,15 @@ class Test(BaseFlow):
183183 @patch ('requests.Session.post' )
184184 def test_flow (self , mock_post , mock_put , mock_get ):
185185
186+ # check local
187+ server = mindsdb_sdk .connect ()
188+ str (server )
189+
190+ assert server .api .url == 'http://127.0.0.1:47334'
191+
192+ # check cloud login
186193 server = mindsdb_sdk .connect (login = 'a@b.com' )
187194
188- # check login
189195 call_args = mock_post .call_args
190196 assert call_args [0 ][0 ] == 'https://cloud.mindsdb.com/cloud/login'
191197 assert call_args [1 ]['json' ]['email' ] == 'a@b.com'
@@ -203,6 +209,7 @@ def test_flow(self, mock_post, mock_put, mock_get):
203209 check_sql_call (mock_post , "select NAME from information_schema.databases where TYPE='data'" )
204210
205211 database = databases [0 ]
212+ str (database )
206213 assert database .name == 'db1'
207214 self .check_database (database )
208215
@@ -370,6 +377,7 @@ def check_project_models(self, project, database, mock_post):
370377 f'CREATE PREDICTOR m2 FROM example_db (select * from t1) PREDICT price ORDER BY date GROUP BY a, b WINDOW 10 HORIZON 2 USING module="LightGBM", `engine`="lightwood"'
371378 )
372379 assert model .name == 'm2'
380+ model .wait_complete ()
373381 self .check_model (model , database )
374382
375383 # create, using deferred query.
@@ -379,6 +387,7 @@ def check_project_models(self, project, database, mock_post):
379387 predict = 'price' ,
380388 query = query ,
381389 )
390+ str (query )
382391
383392 check_sql_call (
384393 mock_post ,
@@ -605,6 +614,7 @@ def test_flow(self, mock_post, mock_put):
605614 self .check_project (project , database )
606615
607616 project = con .projects .create ('proj1' )
617+ str (project )
608618 check_sql_call (
609619 mock_post , 'CREATE DATABASE proj1 WITH ENGINE = "mindsdb", PARAMETERS = {}' )
610620 self .check_project (project , database )
@@ -761,6 +771,7 @@ def check_project_models(self, project, database, mock_post):
761771
762772 models = project .models .list ()
763773 model = models [0 ] # Model object
774+ str (model )
764775
765776 assert model .name == 'm1'
766777 assert model .get_status () == 'complete'
@@ -790,7 +801,7 @@ def check_project_models(self, project, database, mock_post):
790801 'window' : 10 ,
791802 'horizon' : 2
792803 },
793- module = 'LightGBM' , # has to be in options
804+ module = 'LightGBM' , # has to be in options
794805 )
795806 check_sql_call (
796807 mock_post ,
@@ -910,6 +921,11 @@ def check_database(self, database, mock_post):
910921 table2 = database .tables .create ('t2' , query )
911922 check_sql_call (mock_post , f'create table { database .name } .t2 (select * from tbl1)' )
912923
924+ # create with replace
925+ database .tables .create ('t2' , query , replace = True )
926+ check_sql_call (mock_post , f'create or replace table { database .name } .t2 (select * from tbl1)' )
927+
928+
913929 assert table2 .name == 't2'
914930 self .check_table (table2 )
915931
@@ -968,7 +984,9 @@ def check_project_jobs(self, project, mock_post):
968984 assert job .name == 'job1'
969985 assert job .query_str == 'select 1'
970986
987+ dir (project .jobs )
971988 job = project .jobs .job1
989+ str (job )
972990 assert job .name == 'job1'
973991 assert job .query_str == 'select 1'
974992
@@ -978,6 +996,13 @@ def check_project_jobs(self, project, mock_post):
978996 f"select * from jobs where name = 'job1'"
979997 )
980998
999+ job .get_history ()
1000+
1001+ check_sql_call (
1002+ mock_post ,
1003+ f"select * from jobs_history where name = 'job1'"
1004+ )
1005+
9811006 project .jobs .create (
9821007 name = 'job2' ,
9831008 query_str = 'retrain m1' ,
@@ -992,6 +1017,17 @@ def check_project_jobs(self, project, mock_post):
9921017 call_stack_num = - 2
9931018 )
9941019
1020+ project .jobs .create (
1021+ name = 'job2' ,
1022+ query_str = 'retrain m1'
1023+ )
1024+
1025+ check_sql_call (
1026+ mock_post ,
1027+ f"CREATE JOB job2 (retrain m1)" ,
1028+ call_stack_num = - 2
1029+ )
1030+
9951031 project .jobs .drop ('job2' )
9961032
9971033 check_sql_call (
0 commit comments