def test_non_develop_pr_is_not_low_risk(self): pr = _make_pr('oppia/oppia', 'update-changelog-for-release-v0.3.1', 'foo') msg = check_if_pr_is_low_risk.check_if_pr_is_changelog_pr( pr, None, None) self.assertEqual(msg, 'Base branch is not develop')
def test_other_branch_pr_is_not_low_risk(self): pr = _make_pr('oppia/oppia', 'update-changelog-for-release-v0.3.1 ', 'develop') msg = check_if_pr_is_low_risk.check_if_pr_is_changelog_pr( pr, None, None) self.assertEqual(msg, 'Source branch does not indicate a changelog PR')
def test_fork_pr_is_not_low_risk(self): pr = _make_pr('foo/oppia', 'update-changelog-for-release-v0.3.1', 'develop') msg = check_if_pr_is_low_risk.check_if_pr_is_changelog_pr( pr, None, None) self.assertEqual(msg, 'Source repo is not oppia/oppia')
def test_valid_pr_is_low_risk(self): pr = _make_pr('oppia/oppia', 'update-changelog-for-release-v0.3.1', 'develop') diff_files = [ ('AUTHORS', 'AUTHORS'), ('CONTRIBUTORS', 'CONTRIBUTORS'), ('CHANGELOG', 'CHANGELOG'), ('package.json', 'package.json'), ( 'core/templates/pages/about-page/about-page.constants.ts', 'core/templates/pages/about-page/about-page.constants.ts', ), ] file_diffs = { 'package.json': [ '- "version": "0.3.0",', '+ "version": "0.3.1",', ], 'core/templates/pages/about-page/about-page.constants.ts': [ '+ \'Foo Bar\',', ], } msg = check_if_pr_is_low_risk.check_if_pr_is_changelog_pr( pr, diff_files, file_diffs) self.assertEqual(msg, '')
def test_risky_file_pr_is_not_low_risk(self): pr = _make_pr('oppia/oppia', 'update-changelog-for-release-v0.3.1', 'develop') diff_files = [('scripts/start.py', 'scripts/start.py')] file_diffs = {} msg = check_if_pr_is_low_risk.check_if_pr_is_changelog_pr( pr, diff_files, file_diffs) self.assertEqual(msg, 'File scripts/start.py changed and not low-risk')
def test_rename_file_pr_is_not_low_risk(self): pr = _make_pr('oppia/oppia', 'update-changelog-for-release-v0.3.1', 'develop') diff_files = [ ('AUTHORS', 'scripts/start.py'), ] file_diffs = {} msg = check_if_pr_is_low_risk.check_if_pr_is_changelog_pr( pr, diff_files, file_diffs) self.assertEqual(msg, 'File name change: AUTHORS -> scripts/start.py')
def test_risky_package_json_pr_is_not_low_risk(self): pr = _make_pr('oppia/oppia', 'update-changelog-for-release-v0.3.1', 'develop') diff_files = [('package.json', 'package.json')] file_diffs = { 'package.json': [ '- foo: 1,', '+ foo: 2,', ], } msg = check_if_pr_is_low_risk.check_if_pr_is_changelog_pr( pr, diff_files, file_diffs) self.assertEqual(msg, 'package.json changes not low-risk')
def test_package_json_addition_pr_is_not_low_risk(self): pr = _make_pr('oppia/oppia', 'update-changelog-for-release-v0.3.1', 'develop') diff_files = [('package.json', 'package.json')] file_diffs = { 'package.json': [ '- "version": "0.3.0",', '+ "version": "0.3.1",', '+ "foo": "bar",', ], } msg = check_if_pr_is_low_risk.check_if_pr_is_changelog_pr( pr, diff_files, file_diffs) self.assertEqual(msg, 'Only 1 line should change in package.json')
def test_risky_constants_pr_is_not_low_risk(self): pr = _make_pr('oppia/oppia', 'update-changelog-for-release-v0.3.1', 'develop') diff_files = [( 'core/templates/pages/about-page/about-page.constants.ts', 'core/templates/pages/about-page/about-page.constants.ts', )] file_diffs = { 'core/templates/pages/about-page/about-page.constants.ts': [ '+ \'Foo Bar\': {', ], } msg = check_if_pr_is_low_risk.check_if_pr_is_changelog_pr( pr, diff_files, file_diffs) self.assertEqual(msg, 'about-page.constants.ts changes not low-risk')