def test_run_manifest_abort_on_first_failure(): # Set up a valid manifest. config = Namespace(stop_on_first_error=True) sessions_ = [ mock.Mock(spec=sessions.SessionRunner), mock.Mock(spec=sessions.SessionRunner), ] manifest = Manifest({}, config) manifest._queue = copy.copy(sessions_) # Ensure each of the mocks returns a successful result. for mock_session in sessions_: mock_session.execute.return_value = sessions.Result( session=mock_session, status=sessions.Status.FAILED, ) # Run the manifest. results = tasks.run_manifest(manifest, global_config=config) # Verify the results look correct. assert len(results) == 1 assert isinstance(results[0], sessions.Result) assert results[0].session == sessions_[0] assert results[0].status == sessions.Status.FAILED # Verify that only the first session was called. assert sessions_[0].execute.called assert not sessions_[1].execute.called
def test_run_manifest(): # Set up a valid manifest. config = Namespace(stop_on_first_error=False) sessions_ = [ mock.Mock(spec=sessions.SessionRunner), mock.Mock(spec=sessions.SessionRunner), ] manifest = Manifest({}, config) manifest._queue = copy.copy(sessions_) # Ensure each of the mocks returns a successful result for mock_session in sessions_: mock_session.execute.return_value = sessions.Result( session=mock_session, status=sessions.Status.SUCCESS, ) # Run the manifest. results = tasks.run_manifest(manifest, global_config=config) # Verify the results look correct. assert len(results) == 2 assert results[0].session == sessions_[0] assert results[1].session == sessions_[1] for result in results: assert isinstance(result, sessions.Result) assert result.status == sessions.Status.SUCCESS
def test_run_manifest(): # Set up a valid manifest. config = argparse.Namespace(stop_on_first_error=False) sessions_ = [ mock.Mock(spec=sessions.SessionRunner), mock.Mock(spec=sessions.SessionRunner), ] manifest = Manifest({}, config) manifest._queue = copy.copy(sessions_) # Ensure each of the mocks returns a successful result for mock_session in sessions_: mock_session.execute.return_value = sessions.Result( session=mock_session, status=sessions.Status.SUCCESS ) # Run the manifest. results = tasks.run_manifest(manifest, global_config=config) # Verify the results look correct. assert len(results) == 2 assert results[0].session == sessions_[0] assert results[1].session == sessions_[1] for result in results: assert isinstance(result, sessions.Result) assert result.status == sessions.Status.SUCCESS
def test_run_manifest_abort_on_first_failure(): # Set up a valid manifest. config = argparse.Namespace(stop_on_first_error=True) sessions_ = [ mock.Mock(spec=sessions.SessionRunner), mock.Mock(spec=sessions.SessionRunner), ] manifest = Manifest({}, config) manifest._queue = copy.copy(sessions_) # Ensure each of the mocks returns a successful result. for mock_session in sessions_: mock_session.execute.return_value = sessions.Result( session=mock_session, status=sessions.Status.FAILED ) # Run the manifest. results = tasks.run_manifest(manifest, global_config=config) # Verify the results look correct. assert len(results) == 1 assert isinstance(results[0], sessions.Result) assert results[0].session == sessions_[0] assert results[0].status == sessions.Status.FAILED # Verify that only the first session was called. assert sessions_[0].execute.called assert not sessions_[1].execute.called
def test_run_manifest(with_warnings): # Set up a valid manifest. config = _options.options.namespace(stop_on_first_error=False) sessions_ = [ mock.Mock(spec=sessions.SessionRunner), mock.Mock(spec=sessions.SessionRunner), ] manifest = Manifest({}, config) manifest._queue = copy.copy(sessions_) # Ensure each of the mocks returns a successful result for mock_session in sessions_: mock_session.execute.return_value = sessions.Result( session=mock_session, status=sessions.Status.SUCCESS) # we need the should_warn attribute, add some func if with_warnings: mock_session.name = "hello" mock_session.func = session_func_venv_pythons_warning else: mock_session.func = session_func # Run the manifest. results = tasks.run_manifest(manifest, global_config=config) # Verify the results look correct. assert len(results) == 2 assert results[0].session == sessions_[0] assert results[1].session == sessions_[1] for result in results: assert isinstance(result, sessions.Result) assert result.status == sessions.Status.SUCCESS