def test_master_invariants(): with pytest.raises(TypeError): Master(log_config=1) # Strings are converted to File objects m = Master(log_config='/test/path.properties') assert isinstance(m.log_config, File) assert m.log_config.type == 'file' # Relative paths are converted sol = 'file://%s' % os.path.join(os.getcwd(), 'foo/bar.properties') assert Master(log_config='foo/bar.properties').log_config.source == sol # setter/getter f = Master(log_level='debug') assert f.log_level == LogLevel.DEBUG f.log_level = 'info' assert f.log_level == LogLevel.INFO with pytest.raises(TypeError): Master(script=1) with pytest.raises(TypeError): Master(env={'a': 1}) # Mutable defaults properly set m = Master() assert isinstance(m.env, dict) assert isinstance(m.files, dict) # Strings are converted to File objects m = Master(files={'target': '/source.zip', 'target2': '/source2.txt'}) assert m.files['target'].type == 'archive' assert m.files['target2'].type == 'file'
def test_master_invariants(): with pytest.raises(TypeError): Master(log_config=1) # Strings are converted to File objects m = Master(log_config='/test/path.properties') assert isinstance(m.log_config, File) assert m.log_config.type == 'file' # Relative paths are converted sol = 'file://%s' % os.path.join(os.getcwd(), 'foo/bar.properties') assert Master(log_config='foo/bar.properties').log_config.source == sol # setter/getter f = Master(log_level='debug') assert f.log_level == LogLevel.DEBUG f.log_level = 'info' assert f.log_level == LogLevel.INFO