@@ -18,14 +18,14 @@ def tg_upgrade_action(action_cls, args_mock, tmp_data_folder, start_cmd_mock, re
1818def tg_upgrade_stdout_side_effect (stdout_mock ):
1919 side_effect = [
2020 # Pre-execute calls
21- [b"This version: 1.0.0 \n " , b"Latest version: 1.1 .0\n " ], # Version check
21+ [b"TestGen 1.0.0\n " ], # Version check
2222 # Execute calls
2323 [], # Down
2424 [], # Pull
2525 [], # Up
2626 [], # Upgrade DB
2727 # Post-execute calls
28- [b"This version: 1.1.0 \n " , b"Latest version: 1.1.0\n " ], # Confirmation version check
28+ [b"TestGen 1.1.0\n " ], # Confirmation version check
2929 [b"[]" ], # Image data collection
3030 ]
3131
@@ -59,7 +59,7 @@ def get_compose_content(*extra_vars):
5959
6060@pytest .mark .integration
6161def test_tg_upgrade_compose_missing (tg_upgrade_action , args_mock , start_cmd_mock , console_msg_mock ):
62- start_cmd_mock .__exit__ .side_effect = [None , None , None , CommandFailed ]
62+ start_cmd_mock .__exit__ .side_effect = [None , None , CommandFailed ]
6363
6464 with pytest .raises (AbortAction , match = "" ):
6565 tg_upgrade_action ._check_requirements (args_mock )
@@ -68,7 +68,9 @@ def test_tg_upgrade_compose_missing(tg_upgrade_action, args_mock, start_cmd_mock
6868
6969
7070@pytest .mark .integration
71- def test_tg_upgrade (tg_upgrade_action , compose_path , start_cmd_mock , tg_upgrade_stdout_side_effect , args_mock ):
71+ def test_tg_upgrade (tg_upgrade_action , compose_path , start_cmd_mock , tg_upgrade_stdout_side_effect , args_mock , version_check_mock ):
72+ version_check_mock .return_value .code = 200
73+ version_check_mock .return_value .read .return_value = b"{\" docker\" : {\" datakitchen/dataops-testgen\" : \" 1.1.0\" }}"
7274 compose_path .write_text (get_compose_content ())
7375
7476 tg_upgrade_action .execute (args_mock )
@@ -93,21 +95,17 @@ def test_tg_upgrade(tg_upgrade_action, compose_path, start_cmd_mock, tg_upgrade_
9395
9496
9597@pytest .mark .integration
96- @pytest .mark .parametrize (
97- "skip_verify, latest_version" ,
98- ((True , b"1.0.0" ), (True , b"1.1.0" ), (False , b"1.0.0" )),
99- )
10098def test_tg_upgrade_abort (
101- skip_verify ,
102- latest_version ,
10399 tg_upgrade_action ,
104100 compose_path ,
105101 start_cmd_mock ,
106102 tg_upgrade_stdout_side_effect ,
107103 args_mock ,
104+ version_check_mock ,
108105):
109- args_mock .skip_verify = skip_verify
110- tg_upgrade_stdout_side_effect [0 ][1 ] = b"Latest version: %b\n " % latest_version
106+ args_mock .skip_verify = False
107+ version_check_mock .return_value .code = 200
108+ version_check_mock .return_value .read .return_value = b"{\" docker\" : {\" datakitchen/dataops-testgen\" : \" 1.0.0\" }}"
111109 initial_compose_content = get_compose_content ("TG_INSTANCE_ID: test-instance-id" )
112110 compose_path .write_text (initial_compose_content )
113111
@@ -116,7 +114,7 @@ def test_tg_upgrade_abort(
116114
117115 compose_content = compose_path .read_text ()
118116 assert compose_content == initial_compose_content
119- assert start_cmd_mock .call_count == 0 if skip_verify else 1
117+ assert start_cmd_mock .call_count == 1
120118
121119
122120@pytest .mark .integration
@@ -130,8 +128,10 @@ def test_tg_upgrade_enable_analytics(
130128 args_mock ,
131129 console_msg_mock ,
132130 analytics_mock ,
131+ version_check_mock ,
133132):
134- tg_upgrade_stdout_side_effect [0 ][1 ] = b"Latest version: 1.0.0\n "
133+ version_check_mock .return_value .code = 200
134+ version_check_mock .return_value .read .return_value = b"{\" docker\" : {\" datakitchen/dataops-testgen\" : \" 1.0.0\" }}"
135135 compose_path .write_text (get_compose_content ("TG_ANALYTICS: no" if re_enable else "" ))
136136 analytics_mock .get_instance_id .return_value = "test-instance-id"
137137
@@ -153,9 +153,11 @@ def test_tg_upgrade_disable_analytics(
153153 tg_upgrade_stdout_side_effect ,
154154 args_mock ,
155155 console_msg_mock ,
156+ version_check_mock ,
156157):
157158 args_mock .send_analytics_data = False
158- tg_upgrade_stdout_side_effect [0 ][1 ] = b"Latest version: 1.0.0\n "
159+ version_check_mock .return_value .code = 200
160+ version_check_mock .return_value .read .return_value = b"{\" docker\" : {\" datakitchen/dataops-testgen\" : \" 1.0.0\" }}"
159161 compose_path .write_text (
160162 get_compose_content ("TG_INSTANCE_ID: test-instance-id" , "TG_ANALYTICS: yes" if explicitly_enabled else "" )
161163 )
0 commit comments