@@ -213,9 +213,6 @@ def test_bmc_summary_regular_output(self):
213213 )
214214
215215 mock_sonic_platform = mock .MagicMock ()
216- sys .modules ['sonic_platform' ] = mock_sonic_platform
217- sys .modules ['sonic_platform.platform' ] = mock_sonic_platform .platform
218-
219216 mock_platform = mock .MagicMock ()
220217 mock_chassis = mock .MagicMock ()
221218 mock_bmc = mock .MagicMock ()
@@ -226,9 +223,13 @@ def test_bmc_summary_regular_output(self):
226223 mock_bmc .get_version .return_value = self .TEST_BMC_VERSION
227224 mock_sonic_platform .platform .Platform .return_value = mock_platform
228225
229- result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['summary' ], [])
230- assert result .exit_code == 0 , result .output
231- assert result .output == textwrap .dedent (expected_output )
226+ with mock .patch .dict ('sys.modules' , {
227+ 'sonic_platform' : mock_sonic_platform ,
228+ 'sonic_platform.platform' : mock_sonic_platform .platform
229+ }):
230+ result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['summary' ], [])
231+ assert result .exit_code == 0 , result .output
232+ assert result .output == textwrap .dedent (expected_output )
232233
233234 def test_bmc_summary_json_output (self ):
234235 """Test 'show platform bmc summary' with JSON output"""
@@ -242,9 +243,6 @@ def test_bmc_summary_json_output(self):
242243 }
243244
244245 mock_sonic_platform = mock .MagicMock ()
245- sys .modules ['sonic_platform' ] = mock_sonic_platform
246- sys .modules ['sonic_platform.platform' ] = mock_sonic_platform .platform
247-
248246 mock_platform = mock .MagicMock ()
249247 mock_chassis = mock .MagicMock ()
250248 mock_bmc = mock .MagicMock ()
@@ -255,10 +253,14 @@ def test_bmc_summary_json_output(self):
255253 mock_bmc .get_version .return_value = self .TEST_BMC_VERSION
256254 mock_sonic_platform .platform .Platform .return_value = mock_platform
257255
258- result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['summary' ], ['--json' ])
259- assert result .exit_code == 0 , result .output
260- output_json = json .loads (result .output )
261- assert output_json == expected_json
256+ with mock .patch .dict ('sys.modules' , {
257+ 'sonic_platform' : mock_sonic_platform ,
258+ 'sonic_platform.platform' : mock_sonic_platform .platform
259+ }):
260+ result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['summary' ], ['--json' ])
261+ assert result .exit_code == 0 , result .output
262+ output_json = json .loads (result .output )
263+ assert output_json == expected_json
262264
263265 def test_bmc_eeprom_regular_output (self ):
264266 """Test 'show platform bmc eeprom' with regular output"""
@@ -277,9 +279,6 @@ def test_bmc_eeprom_regular_output(self):
277279 )
278280
279281 mock_sonic_platform = mock .MagicMock ()
280- sys .modules ['sonic_platform' ] = mock_sonic_platform
281- sys .modules ['sonic_platform.platform' ] = mock_sonic_platform .platform
282-
283282 mock_platform = mock .MagicMock ()
284283 mock_chassis = mock .MagicMock ()
285284 mock_bmc = mock .MagicMock ()
@@ -289,9 +288,13 @@ def test_bmc_eeprom_regular_output(self):
289288 mock_bmc .get_eeprom .return_value = self .TEST_BMC_EEPROM_INFO
290289 mock_sonic_platform .platform .Platform .return_value = mock_platform
291290
292- result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['eeprom' ], [])
293- assert result .exit_code == 0 , result .output
294- assert result .output == textwrap .dedent (expected_output )
291+ with mock .patch .dict ('sys.modules' , {
292+ 'sonic_platform' : mock_sonic_platform ,
293+ 'sonic_platform.platform' : mock_sonic_platform .platform
294+ }):
295+ result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['eeprom' ], [])
296+ assert result .exit_code == 0 , result .output
297+ assert result .output == textwrap .dedent (expected_output )
295298
296299 def test_bmc_eeprom_json_output (self ):
297300 """Test 'show platform bmc eeprom' with JSON output"""
@@ -304,9 +307,6 @@ def test_bmc_eeprom_json_output(self):
304307 }
305308
306309 mock_sonic_platform = mock .MagicMock ()
307- sys .modules ['sonic_platform' ] = mock_sonic_platform
308- sys .modules ['sonic_platform.platform' ] = mock_sonic_platform .platform
309-
310310 mock_platform = mock .MagicMock ()
311311 mock_chassis = mock .MagicMock ()
312312 mock_bmc = mock .MagicMock ()
@@ -316,34 +316,36 @@ def test_bmc_eeprom_json_output(self):
316316 mock_bmc .get_eeprom .return_value = self .TEST_BMC_EEPROM_INFO
317317 mock_sonic_platform .platform .Platform .return_value = mock_platform
318318
319- result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['eeprom' ], ['--json' ])
320- assert result .exit_code == 0 , result .output
321- output_json = json .loads (result .output )
322- assert output_json == expected_json
319+ with mock .patch .dict ('sys.modules' , {
320+ 'sonic_platform' : mock_sonic_platform ,
321+ 'sonic_platform.platform' : mock_sonic_platform .platform
322+ }):
323+ result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['eeprom' ], ['--json' ])
324+ assert result .exit_code == 0 , result .output
325+ output_json = json .loads (result .output )
326+ assert output_json == expected_json
323327
324328 def test_bmc_summary_bmc_not_available (self ):
325329 """Test 'show platform bmc summary' when BMC is not available"""
326330 mock_sonic_platform = mock .MagicMock ()
327- sys .modules ['sonic_platform' ] = mock_sonic_platform
328- sys .modules ['sonic_platform.platform' ] = mock_sonic_platform .platform
329-
330331 mock_platform = mock .MagicMock ()
331332 mock_chassis = mock .MagicMock ()
332333
333334 mock_platform .get_chassis .return_value = mock_chassis
334335 mock_chassis .get_bmc .return_value = None
335336 mock_sonic_platform .platform .Platform .return_value = mock_platform
336337
337- result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['summary' ], [])
338- assert result .exit_code == 0 , result .output
339- assert "BMC is not available on this platform" in result .output
338+ with mock .patch .dict ('sys.modules' , {
339+ 'sonic_platform' : mock_sonic_platform ,
340+ 'sonic_platform.platform' : mock_sonic_platform .platform
341+ }):
342+ result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['summary' ], [])
343+ assert result .exit_code == 0 , result .output
344+ assert "BMC is not available on this platform" in result .output
340345
341346 def test_bmc_summary_eeprom_info_empty (self ):
342347 """Test 'show platform bmc summary' when EEPROM info is empty"""
343348 mock_sonic_platform = mock .MagicMock ()
344- sys .modules ['sonic_platform' ] = mock_sonic_platform
345- sys .modules ['sonic_platform.platform' ] = mock_sonic_platform .platform
346-
347349 mock_platform = mock .MagicMock ()
348350 mock_chassis = mock .MagicMock ()
349351 mock_bmc = mock .MagicMock ()
@@ -353,50 +355,53 @@ def test_bmc_summary_eeprom_info_empty(self):
353355 mock_bmc .get_eeprom .return_value = None
354356 mock_sonic_platform .platform .Platform .return_value = mock_platform
355357
356- result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['summary' ], [])
357- assert result .exit_code == 0 , result .output
358- assert "Failed to retrieve BMC EEPROM information" in result .output
358+ with mock .patch .dict ('sys.modules' , {
359+ 'sonic_platform' : mock_sonic_platform ,
360+ 'sonic_platform.platform' : mock_sonic_platform .platform
361+ }):
362+ result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['summary' ], [])
363+ assert result .exit_code == 0 , result .output
364+ assert "Failed to retrieve BMC EEPROM information" in result .output
359365
360366 def test_bmc_summary_exception (self ):
361367 """Test 'show platform bmc summary' when an exception occurs"""
362368 mock_sonic_platform = mock .MagicMock ()
363- sys .modules ['sonic_platform' ] = mock_sonic_platform
364- sys .modules ['sonic_platform.platform' ] = mock_sonic_platform .platform
365-
366369 mock_platform = mock .MagicMock ()
367370 mock_chassis = mock .MagicMock ()
368371
369372 mock_platform .get_chassis .return_value = mock_chassis
370373 mock_chassis .get_bmc .side_effect = Exception ("Test exception" )
371374 mock_sonic_platform .platform .Platform .return_value = mock_platform
372375
373- result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['summary' ], [])
374- assert result .exit_code == 0 , result .output
375- assert "Error retrieving BMC information: Test exception" in result .output
376+ with mock .patch .dict ('sys.modules' , {
377+ 'sonic_platform' : mock_sonic_platform ,
378+ 'sonic_platform.platform' : mock_sonic_platform .platform
379+ }):
380+ result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['summary' ], [])
381+ assert result .exit_code == 0 , result .output
382+ assert "Error retrieving BMC information: Test exception" in result .output
376383
377384 def test_bmc_eeprom_bmc_not_available (self ):
378385 """Test 'show platform bmc eeprom' when BMC is not available"""
379386 mock_sonic_platform = mock .MagicMock ()
380- sys .modules ['sonic_platform' ] = mock_sonic_platform
381- sys .modules ['sonic_platform.platform' ] = mock_sonic_platform .platform
382-
383387 mock_platform = mock .MagicMock ()
384388 mock_chassis = mock .MagicMock ()
385389
386390 mock_platform .get_chassis .return_value = mock_chassis
387391 mock_chassis .get_bmc .return_value = None
388392 mock_sonic_platform .platform .Platform .return_value = mock_platform
389393
390- result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['eeprom' ], [])
391- assert result .exit_code == 0 , result .output
392- assert "BMC is not available on this platform" in result .output
394+ with mock .patch .dict ('sys.modules' , {
395+ 'sonic_platform' : mock_sonic_platform ,
396+ 'sonic_platform.platform' : mock_sonic_platform .platform
397+ }):
398+ result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['eeprom' ], [])
399+ assert result .exit_code == 0 , result .output
400+ assert "BMC is not available on this platform" in result .output
393401
394402 def test_bmc_eeprom_info_empty (self ):
395403 """Test 'show platform bmc eeprom' when EEPROM info is empty"""
396404 mock_sonic_platform = mock .MagicMock ()
397- sys .modules ['sonic_platform' ] = mock_sonic_platform
398- sys .modules ['sonic_platform.platform' ] = mock_sonic_platform .platform
399-
400405 mock_platform = mock .MagicMock ()
401406 mock_chassis = mock .MagicMock ()
402407 mock_bmc = mock .MagicMock ()
@@ -406,23 +411,28 @@ def test_bmc_eeprom_info_empty(self):
406411 mock_bmc .get_eeprom .return_value = None
407412 mock_sonic_platform .platform .Platform .return_value = mock_platform
408413
409- result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['eeprom' ], [])
410- assert result .exit_code == 0 , result .output
411- assert "Failed to retrieve BMC EEPROM information" in result .output
414+ with mock .patch .dict ('sys.modules' , {
415+ 'sonic_platform' : mock_sonic_platform ,
416+ 'sonic_platform.platform' : mock_sonic_platform .platform
417+ }):
418+ result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['eeprom' ], [])
419+ assert result .exit_code == 0 , result .output
420+ assert "Failed to retrieve BMC EEPROM information" in result .output
412421
413422 def test_bmc_eeprom_exception (self ):
414423 """Test 'show platform bmc eeprom' when an exception occurs"""
415424 mock_sonic_platform = mock .MagicMock ()
416- sys .modules ['sonic_platform' ] = mock_sonic_platform
417- sys .modules ['sonic_platform.platform' ] = mock_sonic_platform .platform
418-
419425 mock_platform = mock .MagicMock ()
420426 mock_chassis = mock .MagicMock ()
421427
422428 mock_platform .get_chassis .return_value = mock_chassis
423429 mock_chassis .get_bmc .side_effect = Exception ("Test exception" )
424430 mock_sonic_platform .platform .Platform .return_value = mock_platform
425431
426- result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['eeprom' ], [])
427- assert result .exit_code == 0 , result .output
428- assert "Error retrieving BMC EEPROM information: Test exception" in result .output
432+ with mock .patch .dict ('sys.modules' , {
433+ 'sonic_platform' : mock_sonic_platform ,
434+ 'sonic_platform.platform' : mock_sonic_platform .platform
435+ }):
436+ result = CliRunner ().invoke (show .cli .commands ['platform' ].commands ['bmc' ].commands ['eeprom' ], [])
437+ assert result .exit_code == 0 , result .output
438+ assert "Error retrieving BMC EEPROM information: Test exception" in result .output
0 commit comments