def test_build_by_variant(self, sample_version): mock_api = MagicMock() version = Version(sample_version, mock_api) build_variant = sample_version['build_variants_status'][0] build = version.build_by_variant(build_variant['build_variant']) assert build == mock_api.build_by_id.return_value mock_api.build_by_id.assert_called_once_with(build_variant['build_id'])
def _flips_for_build(build: Build, next_version: Version, prev_version: Version) -> List[str]: """ Build a list of tasks that flipped in this build. :param build: Build to check. :param next_version: Next version to check against. :param prev_version: Previous version to check against. :return: List of tasks that flipped in given build. """ next_build = next_version.build_by_variant(build.build_variant) prev_build = prev_version.build_by_variant(build.build_variant) tasks = build.get_tasks() next_tasks = _create_task_map(next_build.get_tasks()) prev_tasks = _create_task_map(prev_build.get_tasks()) return [ task.display_name for task in tasks if _is_task_a_flip(task, next_tasks, prev_tasks) ]