%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
# Copyright 2022 Canonical, Ltd.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, version 3.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# from unittest.mock import Mock
from subiquitycore.tests import SubiTestCase
from subiquitycore.utils import orig_environ
class TestOrigEnviron(SubiTestCase):
def test_empty(self):
env = {}
expected = env
self.assertEqual(expected, orig_environ(env))
def test_orig_path(self):
env = {'PATH': 'a', 'PATH_ORIG': 'b'}
expected = {'PATH': 'b'}
self.assertEqual(expected, orig_environ(env))
def test_not_this_key(self):
env = {'PATH': 'a', 'PATH_ORIG_AAAAA': 'b'}
expected = env
self.assertEqual(expected, orig_environ(env))
def test_remove_empty_key(self):
env = {'STUFF': 'a', 'STUFF_ORIG': ''}
expected = {}
self.assertEqual(expected, orig_environ(env))
def test_practical(self):
snap = '/snap/subiquity/1234'
env = {
'TERM': 'linux',
'PYTHONIOENCODING_ORIG': '',
'PYTHONIOENCODING': 'utf-8',
'SUBIQUITY_ROOT_ORIG': '',
'SUBIQUITY_ROOT': snap,
'PYTHON_ORIG': '',
'PYTHON': f'{snap}/usr/bin/python3.8',
'PYTHONPATH_ORIG': '',
'PYTHONPATH': f'{snap}/stuff/things',
'PY3OR2_PYTHON_ORIG': '',
'PY3OR2_PYTHON': f'{snap}/usr/bin/python3.8',
'PATH_ORIG': '/usr/bin:/bin',
'PATH': '/usr/bin:/bin:/snap/bin'
}
expected = {
'TERM': 'linux',
'PATH': '/usr/bin:/bin',
}
self.assertEqual(expected, orig_environ(env))