import unittest import unit class TestUnitPythonEnvironment(unit.TestUnitApplicationPython): def setUpClass(): unit.TestUnit().check_modules('python') def test_python_environment_name_null(self): self.load('environment') self.assertIn('error', self.conf({ "va\0r": "val1" }, 'applications/environment/environment'), 'name null') def test_python_environment_name_equals(self): self.load('environment') self.assertIn('error', self.conf({ "var=": "val1" }, 'applications/environment/environment'), 'name equals') def test_python_environment_value_null(self): self.load('environment') self.assertIn('error', self.conf({ "var": "\0val" }, 'applications/environment/environment'), 'value null') def test_python_environment_update(self): self.load('environment') self.conf({ "var": "val1" }, 'applications/environment/environment') self.assertEqual(self.get(headers={ 'Host': 'localhost', 'X-Variables': 'var', 'Connection': 'close' })['body'], 'val1,', 'set') self.conf({ "var": "val2" }, 'applications/environment/environment') self.assertEqual(self.get(headers={ 'Host': 'localhost', 'X-Variables': 'var', 'Connection': 'close' })['body'], 'val2,', 'update') def test_python_environment_replace(self): self.load('environment') self.conf({ "var1": "val1" }, 'applications/environment/environment') self.assertEqual(self.get(headers={ 'Host': 'localhost', 'X-Variables': 'var1', 'Connection': 'close' })['body'], 'val1,', 'set') self.conf({ "var2": "val2" }, 'applications/environment/environment') self.assertEqual(self.get(headers={ 'Host': 'localhost', 'X-Variables': 'var1,var2', 'Connection': 'close' })['body'], 'val2,', 'replace') def test_python_environment_clear(self): self.load('environment') self.conf({ "var1": "val1", "var2": "val2" }, 'applications/environment/environment') self.assertEqual(self.get(headers={ 'Host': 'localhost', 'X-Variables': 'var1,var2', 'Connection': 'close' })['body'], 'val1,val2,', 'set') self.conf({}, 'applications/environment/environment') self.assertEqual(self.get(headers={ 'Host': 'localhost', 'X-Variables': 'var1,var2', 'Connection': 'close' })['body'], '', 'clear') def test_python_environment_replace_default(self): self.load('environment') pwd_default = self.get(headers={ 'Host': 'localhost', 'X-Variables': 'PWD', 'Connection': 'close' })['body'] self.assertGreater(len(pwd_default), 1, 'get default') self.conf({ "PWD": "new/pwd" }, 'applications/environment/environment') self.assertEqual(self.get(headers={ 'Host': 'localhost', 'X-Variables': 'PWD', 'Connection': 'close' })['body'], 'new/pwd,', 'replace default') self.conf({}, 'applications/environment/environment') self.assertEqual(self.get(headers={ 'Host': 'localhost', 'X-Variables': 'PWD', 'Connection': 'close' })['body'], pwd_default, 'restore default') if __name__ == '__main__': unittest.main()