def test_boolean_key(self): rcode = apply_config.main(['os-apply-config', '--metadata', self.path, '--boolean-key', 'btrue']) self.assertEqual(0, rcode) rcode = apply_config.main(['os-apply-config', '--metadata', self.path, '--boolean-key', 'bfalse']) self.assertEqual(1, rcode) rcode = apply_config.main(['os-apply-config', '--metadata', self.path, '--boolean-key', 'x']) self.assertEqual(-1, rcode)
def test_os_config_files(self): with tempfile.NamedTemporaryFile() as fake_os_config_files: with tempfile.NamedTemporaryFile() as fake_config: fake_config.write(json.dumps(CONFIG)) fake_config.flush() fake_os_config_files.write(json.dumps([fake_config.name])) fake_os_config_files.flush() apply_config.main(['os-apply-config', '--key', 'database.url', '--type', 'raw', '--os-config-files', fake_os_config_files.name]) self.stdout.seek(0) self.assertEqual( CONFIG['database']['url'], self.stdout.read().strip())
def test_os_config_files(self): with tempfile.NamedTemporaryFile() as fake_os_config_files: with tempfile.NamedTemporaryFile() as fake_config: fake_config.write(json.dumps(CONFIG).encode('utf-8')) fake_config.flush() fake_os_config_files.write( json.dumps([fake_config.name]).encode('utf-8')) fake_os_config_files.flush() apply_config.main([ 'os-apply-config', '--key', 'database.url', '--type', 'raw', '--os-config-files', fake_os_config_files.name ]) self.stdout.seek(0) self.assertEqual(CONFIG['database']['url'], self.stdout.read().strip())
def test_print_null_key(self): self.assertEqual(0, apply_config.main( ['os-apply-config.py', '--metadata', self.path, '--key', 'z', '--type', 'raw', '--key-default', ''])) self.stdout.seek(0) self.assertEqual('', self.stdout.read().strip()) self.assertEqual('', self.logger.output)
def test_print_key_missing_default(self): self.assertEqual(0, apply_config.main( ['os-apply-config.py', '--metadata', self.path, '--key', 'does.not.exist', '--key-default', ''])) self.stdout.seek(0) self.assertEqual('', self.stdout.read().strip()) self.assertEqual('', self.logger.output)
def test_print_key_from_list_missing_default(self): self.assertEqual(0, apply_config.main( ['os-apply-config.py', '--metadata', self.path, '--key', 'l.2', '--type', 'int', '--key-default', ''])) self.stdout.seek(0) self.assertEqual('', self.stdout.read().strip()) self.assertEqual('', self.logger.output)
def test_print_key_from_list_missing(self): self.assertEqual( 1, apply_config.main([ 'os-apply-config.py', '--metadata', self.path, '--key', 'l.2', '--type', 'int' ])) self.assertIn('does not exist', self.logger.output)
def test_print_key_wrong_type(self): self.assertEqual( 1, apply_config.main([ 'os-apply-config.py', '--metadata', self.path, '--key', 'x', '--type', 'int' ])) self.assertIn('cannot interpret value', self.logger.output)
def test_print_key_json_list(self): self.assertEqual(0, apply_config.main( ['os-apply-config.py', '--metadata', self.path, '--key', 'l', '--type', 'raw'])) self.stdout.seek(0) self.assertEqual(CONFIG['l'], json.loads(self.stdout.read().strip())) self.assertEqual('', self.logger.output)
def test_print_key_from_list(self): self.assertEqual(0, apply_config.main( ['os-apply-config.py', '--metadata', self.path, '--key', 'l.0', '--type', 'int'])) self.stdout.seek(0) self.assertEqual(str(CONFIG['l'][0]), self.stdout.read().strip()) self.assertEqual('', self.logger.output)
def test_boolean_key_and_key(self): rcode = apply_config.main(['os-apply-config', '--metadata', self.path, '--boolean-key', 'btrue', '--key', 'x']) self.assertEqual(0, rcode) self.stdout.seek(0) self.assertEqual(self.stdout.read().strip(), 'foo') self.assertIn('--boolean-key ignored', self.logger.output)
def test_print_non_string_key(self): self.assertEqual(0, apply_config.main( ['os-apply-config.py', '--metadata', self.path, '--key', 'y', '--type', 'raw'])) self.stdout.seek(0) self.assertEqual("false", self.stdout.read().strip()) self.assertEqual('', self.logger.output)
def test_print_non_string_key(self): self.assertEqual(0, apply_config.main( ['os-apply-config.py', '--metadata', self.path, '--key', 'y', '--type', 'raw'])) self.stdout.seek(0) self.assertEqual(str(CONFIG['y']), self.stdout.read().strip()) self.assertEqual('', self.logger.output)
def test_print_key(self): self.assertEqual(0, apply_config.main( ['os-apply-config.py', '--metadata', self.path, '--key', 'database.url', '--type', 'raw'])) self.stdout.seek(0) self.assertEqual(CONFIG['database']['url'], self.stdout.read().strip()) self.assertEqual('', self.logger.output)
def test_print_templates(self): apply_config.main(['os-apply-config', '--print-templates']) self.stdout.seek(0) self.assertEqual(self.stdout.read().strip(), apply_config.TEMPLATES_DIR) self.assertEqual('', self.logger.output)
def test_print_templates(self): apply_config.main(['os-apply-config', '--print-templates']) self.stdout.seek(0) self.assertEqual( self.stdout.read().strip(), apply_config.TEMPLATES_DIR) self.assertEqual('', self.logger.output)
def test_print_key_wrong_type(self): self.assertEqual(1, apply_config.main( ['os-apply-config.py', '--metadata', self.path, '--key', 'x', '--type', 'int'])) self.assertIn('cannot interpret value', self.logger.output)
def test_print_key_missing(self): self.assertEqual(1, apply_config.main( ['os-apply-config.py', '--metadata', self.path, '--key', 'does.not.exist'])) self.assertIn('does not exist', self.logger.output)