From 25376c413315356c18781404340f1b3ae41ab7aa Mon Sep 17 00:00:00 2001 From: gengchc2 Date: Sun, 18 Nov 2018 18:26:24 -0800 Subject: [PATCH] Add session search unit test for sqlalchemy The patch add search unit test Change-Id: If33e167428033997d2315990ca455c072bc51d0d --- freezer_api/tests/unit/common.py | 37 +++++++++++++++++++ .../tests/unit/sqlalchemy/test_session.py | 29 +++++++++++++++ 2 files changed, 66 insertions(+) diff --git a/freezer_api/tests/unit/common.py b/freezer_api/tests/unit/common.py index 02a8c121..6c180877 100644 --- a/freezer_api/tests/unit/common.py +++ b/freezer_api/tests/unit/common.py @@ -605,6 +605,39 @@ fake_session_2 = { "project_id": "tecs" } +fake_session_3 = { + "session_id": 'turistidellademocrazia', + "session_tag": 6, + "description": 'This is a session about test', + "hold_off": 150, + "schedule": { + "time_created": 1234, + "time_started": 1234, + "time_ended": 0, + "status": "stop", + "schedule_date": "2018-11-14T16:20:00" + }, + "jobs": { + 'venerescollataincorpodalolita': { + "client_id": 'bruco', + "status": 'running', + "start_time": 12344321, + }, + 'job_id_2': { + "client_id": "cocktail", + "status": 'completed', + "result": 'success', + "start_time": 123321, + "end_time": 123325, + } + }, + "time_start": 123412344, + "time_end": 432234432, + "status": "running", + "user_id": "califfo", + "project_id": "tecs" +} + def get_fake_session_0(): return copy.deepcopy(fake_session_0) @@ -618,6 +651,10 @@ def get_fake_session_2(): return copy.deepcopy(fake_session_2) +def get_fake_session_3(): + return copy.deepcopy(fake_session_3) + + def get_fake_session_id(): return uuid.uuid4().hex diff --git a/freezer_api/tests/unit/sqlalchemy/test_session.py b/freezer_api/tests/unit/sqlalchemy/test_session.py index f26d8a75..3ff290d1 100644 --- a/freezer_api/tests/unit/sqlalchemy/test_session.py +++ b/freezer_api/tests/unit/sqlalchemy/test_session.py @@ -31,6 +31,8 @@ class DbSessionTestCase(base.DbTestCase): self.fake_session_0.pop('session_id') self.fake_session_2 = common.get_fake_session_2() self.fake_session_2.pop('session_id') + self.fake_session_3 = common.get_fake_session_3() + self.fake_session_3.pop('session_id') self.fake_session_id = common.get_fake_session_id() def test_add_and_get_session(self): @@ -166,3 +168,30 @@ class DbSessionTestCase(base.DbTestCase): self.assertIsNotNone(result) self.assertEqual(result, self.fake_session_id) + + def test_add_and_search_session(self): + count = 0 + sessionids = [] + while (count < 20): + doc = copy.deepcopy(self.fake_session_3) + session_id = self.dbapi.add_session(project_id=self.fake_session_3. + get('project_id'), + user_id=self.fake_session_3. + get('user_id'), + doc=doc) + self.assertIsNotNone(session_id) + sessionids.append(session_id) + count += 1 + + result = self.dbapi.search_session(user_id=self.fake_session_3. + get('user_id'), + project_id=self.fake_session_3. + get('project_id'), + offset=0, + limit=10) + self.assertIsNotNone(result) + self.assertEqual(len(result), 10) + + for index in range(len(result)): + sessionmap = result[index] + self.assertEqual(sessionids[index], sessionmap['session_id'])