def test_load_config_external_app(self, mock_merge_config): """Test load config for external app""" mock_nulecule = mock.Mock( name='nulecule', spec=Nulecule('some-id', '0.0.2', {}, [], 'some/path') ) params = [ {'name': 'key1'}, {'name': 'key2'} ] initial_config = { 'general': {'a': 'b', 'key2': 'val2'}, 'some-app': {'key1': 'val1'} } nc = NuleculeComponent('some-app', 'some/path', params=params) nc._app = mock_nulecule nc.load_config(config=copy.deepcopy(initial_config)) mock_nulecule.load_config.assert_called_once_with( config={ 'general': {'a': 'b', 'key2': 'val2'}, 'some-app': {'key1': 'val1', 'key2': 'val2'} }, ask=False, skip_asking=False) mock_merge_config.assert_called_once_with( nc.config, mock_nulecule.config)
def test_load_config_external_app(self): """Test load config for external app""" params = [{ 'name': 'key1', 'description': 'key1' }, { 'name': 'key2', 'description': 'key2' }] initial_config = { 'general': { 'a': 'b', 'key2': 'val2' }, 'some-app': { 'key1': 'val1' } } config = Config(answers=initial_config) mock_nulecule = mock.Mock(name='nulecule', spec=Nulecule('some-id', '0.0.2', config, [], 'some/path')) nc = NuleculeComponent('some-app', 'some/path', params=params) nc._app = mock_nulecule nc.config = config nc.load_config() mock_nulecule.load_config.assert_called_once_with(config=config, ask=False, skip_asking=False)
def test_load_config_external_app(self, mock_merge_config): """Test load config for external app""" mock_nulecule = mock.Mock(name='nulecule', spec=Nulecule('some-id', '0.0.2', {}, [], 'some/path')) params = [{'name': 'key1'}, {'name': 'key2'}] initial_config = { 'general': { 'a': 'b', 'key2': 'val2' }, 'some-app': { 'key1': 'val1' } } nc = NuleculeComponent('some-app', 'some/path', params=params) nc._app = mock_nulecule nc.load_config(config=copy.deepcopy(initial_config)) mock_nulecule.load_config.assert_called_once_with(config={ 'general': { 'a': 'b', 'key2': 'val2' }, 'some-app': { 'key1': 'val1', 'key2': 'val2' } }, ask=False, skip_asking=False) mock_merge_config.assert_called_once_with(nc.config, mock_nulecule.config)
def test_run_external_app(self): mock_nulecule = mock.Mock(name='nulecule') dryrun = False nc = NuleculeComponent('some-name', 'some/path') nc._app = mock_nulecule nc.run('some-provider', dryrun) mock_nulecule.run.assert_called_once_with('some-provider', dryrun)
def test_stop_external_app(self): """Test stopping an external application""" mock_nulecule = mock.Mock(name='nulecule') dryrun = False nc = NuleculeComponent('some-name', 'some/path') nc._app = mock_nulecule nc.stop('some-provider', dryrun) mock_nulecule.stop.assert_called_once_with('some-provider', dryrun)
def test_render_for_external_app(self): """Test rendering a nulecule component pointing to an external app""" mock_nulecule = mock.Mock(name='nulecule') provider_key = 'some-provider' dryrun = False nc = NuleculeComponent(name='some-app', basepath='some/path') nc._app = mock_nulecule nc.render(provider_key, dryrun) mock_nulecule.render.assert_called_once_with( provider_key=provider_key, dryrun=dryrun)
def test_render_for_external_app(self): """Test rendering a nulecule component pointing to an external app""" mock_nulecule = mock.Mock(name='nulecule') provider_key = 'some-provider' dryrun = False nc = NuleculeComponent(name='some-app', basepath='some/path') nc._app = mock_nulecule nc.render(provider_key, dryrun) mock_nulecule.render.assert_called_once_with(provider_key=provider_key, dryrun=dryrun)
def test_load_config_external_app(self): """Test load config for external app""" params = [ {'name': 'key1', 'description': 'key1'}, {'name': 'key2', 'description': 'key2'} ] initial_config = { 'general': {'a': 'b', 'key2': 'val2'}, 'some-app': {'key1': 'val1'} } config = Config(answers=initial_config) mock_nulecule = mock.Mock( name='nulecule', spec=Nulecule('some-id', '0.0.2', config, [], 'some/path') ) nc = NuleculeComponent('some-app', 'some/path', params=params) nc._app = mock_nulecule nc.config = config nc.load_config() mock_nulecule.load_config.assert_called_once_with( config=config, ask=False, skip_asking=False)
def test_components_for_external_app(self): nc = NuleculeComponent('some-app', 'some/path') nc._app = mock.Mock(name='nulecule') nc._app.components = ['a', 'b', 'c'] self.assertEqual(nc.components, ['a', 'b', 'c'])