def test_missing_value_exception(self): class Job(BaseJob): missing_field = StringField() with make_test_file() as filename: props.load(filename) self.assertRaises(KeyError, Job)
def load_test_env(field): """ :param field: fields instance """ with make_test_file() as filename: props.load(filename) job_class = make_job(field) yield job_class()
def test_deep_inheritance_default_field_check(self): class Base(BaseJob): test_field = StringField(default='default_value') class Derived(Base): pass with make_test_file() as filename: props.load(filename) job = Derived() self.assertEqual(props['test_field'], 'default_value') self.assertEqual(job.test_field, 'default_value')
def test_deep_inheritance_field_check(self): class Base(BaseJob): string_field = StringField() class Derived(Base): pass with make_test_file() as filename: props.load(filename) job = Derived() self.assertEqual(job.string_field, 'some text')
def test_clearing_props_on_load(self): with make_test_file() as filename: props.load(filename) props['key_that_must_disappear'] = 'value' props.load(filename) self.assertNotIn('key_that_must_disappear', props) props['key_that_must_disappear'] = 'value' props.load(filename, clear=False) self.assertIn('key_that_must_disappear', props)