Exemplo n.º 1
0
    def test_get_impacts_canary_not_exists(self):
        """Test getting impacts if there's no Canary build, only dev."""
        self.mock.get_impact_on_build.side_effect = [
            self.impacts.stable, self.impacts.beta,
            self.impacts.extended_stable
        ]
        self.mock.get_build_to_revision_mappings.return_value = {
            'stable': {
                'revision': '398287',
                'version': '74.0.1345.34'
            },
            'beta': {
                'revision': '399171',
                'version': '75.0.1353.43'
            },
            'dev': {
                'revision': '400000',
                'version': '76.0.1234.43'
            }
        }

        self.assertEqual(
            self.impacts,
            impact_task.get_impacts_on_prod_builds(self.testcase, 'path'))
        self.mock.get_impact_on_build.assert_has_calls([
            mock.call('stable', self.testcase.impact_stable_version,
                      self.testcase, 'path'),
            mock.call('beta', self.testcase.impact_beta_version, self.testcase,
                      'path'),
            mock.call('extended_stable',
                      self.testcase.impact_extended_stable_version,
                      self.testcase, 'path'),
        ])
        self.mock.get_impacts_from_url.assert_has_calls([])
Exemplo n.º 2
0
  def test_app_failed_on_stable(self):
    """Test raising AppFailedException when getting stable impact."""
    self.mock.get_impact_on_build.side_effect = impact_task.AppFailedException()
    self.mock.get_impacts_from_url.return_value = self.impacts

    self.assertEqual(
        self.impacts,
        impact_task.get_impacts_on_prod_builds(self.testcase, 'path'))
    self.mock.get_impact_on_build.assert_has_calls([
        mock.call('stable', self.testcase.impact_stable_version, self.testcase,
                  'path')
    ])
    self.mock.get_impacts_from_url.assert_has_calls(
        [mock.call(self.testcase.regression, self.testcase.job_type)])
Exemplo n.º 3
0
    def test_get_impacts(self):
        """Test getting impacts."""
        self.mock.get_impact_on_build.side_effect = [
            self.impacts.stable, self.impacts.beta
        ]

        self.assertEqual(
            self.impacts,
            impact_task.get_impacts_on_prod_builds(self.testcase, 'path'))
        self.mock.get_impact_on_build.assert_has_calls([
            mock.call('stable', self.testcase.impact_stable_version,
                      self.testcase, 'path'),
            mock.call('beta', self.testcase.impact_beta_version, self.testcase,
                      'path'),
        ])
        self.mock.get_impacts_from_url.assert_has_calls([])
    def test_app_failed_on_beta(self):
        """Test app fail on beta."""
        self.mock.get_impact_on_build.side_effect = [
            self.impacts.stable,
            impact_task.AppFailedException()
        ]

        self.assertEqual(
            impact_task.Impacts(self.impacts.stable, impact_task.Impact()),
            impact_task.get_impacts_on_prod_builds(self.testcase, 'path'))
        self.mock.get_impact_on_build.assert_has_calls([
            mock.call('stable', self.testcase.impact_stable_version,
                      self.testcase, 'path'),
            mock.call('beta', self.testcase.impact_beta_version, self.testcase,
                      'path'),
        ])
        self.mock.get_impacts_from_url.assert_has_calls([])
    def test_any_exception_on_extended_stable(self):
        """Test exceptions on extended stable.
    Current expected behavior is the failure is ignored"""
        self.mock.get_impact_on_build.side_effect = [
            self.impacts.stable,
            self.impacts.beta,
            Exception(),
        ]

        self.assertEqual(
            impact_task.Impacts(self.impacts.stable, self.impacts.beta),
            impact_task.get_impacts_on_prod_builds(self.testcase, 'path'))
        self.mock.get_impact_on_build.assert_has_calls([
            mock.call('stable', self.testcase.impact_stable_version,
                      self.testcase, 'path'),
            mock.call('beta', self.testcase.impact_beta_version, self.testcase,
                      'path'),
            mock.call('extended_stable',
                      self.testcase.impact_extended_stable_version,
                      self.testcase, 'path'),
        ])
        self.mock.get_impacts_from_url.assert_has_calls([])