Coverage for mindsdb / integrations / handlers / surrealdb_handler / tests / test_surrealdb_handler.py: 0%

33 statements  

« prev     ^ index     » next       coverage.py v7.13.1, created at 2026-01-21 00:36 +0000

1import unittest 

2 

3from mindsdb.integrations.handlers.surrealdb_handler.surrealdb_handler import SurrealDBHandler 

4from mindsdb.api.executor.data_types.response_type import RESPONSE_TYPE 

5 

6 

7class SurrealdbHandlerTest(unittest.TestCase): 

8 

9 @classmethod 

10 def setUpClass(cls): 

11 cls.kwargs = { 

12 "connection_data": { 

13 "host": "localhost", 

14 "port": "8000", 

15 "user": "admin", 

16 "password": "password", 

17 "namespace": "test", 

18 "database": "test" 

19 } 

20 } 

21 cls.handler = SurrealDBHandler('test_surrealdb_handler', **cls.kwargs) 

22 

23 def test_0_check_connection(self): 

24 assert self.handler.check_connection() 

25 

26 def test_1_create_table(self): 

27 res = self.handler.native_query("CREATE person SET name = 'Tobie', company = 'SurrealDB', " 

28 "skills = ['Rust', 'Go', 'JavaScript'];") 

29 assert res.type is not RESPONSE_TYPE.ERROR 

30 

31 def test_2_insert(self): 

32 res = self.handler.native_query("UPDATE person SET name = 'Jamie'") 

33 assert res.type is not RESPONSE_TYPE.ERROR 

34 

35 def test_3_select_query(self): 

36 query = "SELECT * FROM person" 

37 result = self.handler.native_query(query) 

38 assert result.type is RESPONSE_TYPE.TABLE 

39 

40 def test_4_get_columns(self): 

41 columns = self.handler.get_columns('person') 

42 assert columns.type is not RESPONSE_TYPE.ERROR 

43 

44 def test_5_get_tables(self): 

45 tables = self.handler.get_tables() 

46 assert tables.type is not RESPONSE_TYPE.ERROR 

47 

48 def test_6_drop_table(self): 

49 res = self.handler.native_query("REMOVE table person") 

50 assert res.type is not RESPONSE_TYPE.ERROR 

51 

52 def test_7_disconnect(self): 

53 assert self.handler.disconnect() is None 

54 

55 

56if __name__ == '__main__': 

57 unittest.main()