Improve platform mocking
Patch out charmhelpers.osplatform.get_platform() and charmhelpers.core.host.lsb_release() globally in the unit tests to insulate the unit tests from the platform that the unit tests are being run on. Change-Id: I3ca0e47cc8cd0bc8475c0c4b0ef8d013d52401ed
This commit is contained in:
parent
8045849848
commit
955f7e710c
@ -15,6 +15,8 @@
|
||||
import os
|
||||
import sys
|
||||
|
||||
from unittest.mock import patch
|
||||
|
||||
_path = os.path.dirname(os.path.realpath(__file__))
|
||||
_actions = os.path.abspath(os.path.join(_path, '../actions'))
|
||||
_hooks = os.path.abspath(os.path.join(_path, '../hooks'))
|
||||
@ -29,3 +31,12 @@ def _add_path(path):
|
||||
_add_path(_actions)
|
||||
_add_path(_hooks)
|
||||
_add_path(_lib)
|
||||
|
||||
# Patch out lsb_release() and get_platform() as unit tests should be fully
|
||||
# insulated from the underlying platform. Unit tests assume that the system is
|
||||
# ubuntu jammy.
|
||||
patch('charmhelpers.osplatform.get_platform', return_value='ubuntu').start()
|
||||
patch('charmhelpers.core.host.lsb_release',
|
||||
return_value={
|
||||
'DISTRIB_CODENAME': 'jammy',
|
||||
}).start()
|
||||
|
Loading…
Reference in New Issue
Block a user