예제 #1
0
    def test__changelog_generate_main(self):
        self.create_example_repo()

        changelog_generate_main()

        self.assertTrue(os.path.exists('artifacts/reports/changelog/changelog.md'))
        with open('artifacts/reports/changelog/changelog.md') as fh:
            changelog_contents = fh.read()

        print(changelog_contents)

        self.assertNotIn('# mypyvalidator first_commit (', changelog_contents)
        self.assertNotIn('# mypyvalidator new (', changelog_contents)
        self.assertIn('# mypyvalidator v0.0.1 (', changelog_contents)
        self.assertIn('# mypyvalidator v0.1.0 (', changelog_contents)
        self.assertIn('# mypyvalidator v0.1.1 (', changelog_contents)
예제 #2
0
    def test_generate_main__invalid_type(self):
        self.create_example_repo()
        self.write_config_files({'changelog.d/5.moose.md': b'Bad changelog entry\n'})
        os.system('git add changelog.d/5.moose.md')
        os.system('git commit -a -m "fifth commit"')
        os.system('git tag v0.2.0')

        changelog_generate_main()

        self.assertTrue(os.path.exists('artifacts/reports/changelog/changelog.md'))
        with open('artifacts/reports/changelog/changelog.md') as fh:
            changelog_contents = fh.read()

        print(changelog_contents)

        self.assertNotIn('# mypyvalidator v0.2.0 (', changelog_contents)
예제 #3
0
    def test__changelog_generate_main__releases_all(self):
        os.environ['CHANGELOG_RELEASES'] = 'all'
        self.create_example_repo()

        changelog_generate_main()

        self.assertTrue(
            os.path.exists('artifacts/reports/changelog/changelog.md'))
        with open('artifacts/reports/changelog/changelog.md') as fh:
            changelog_contents = fh.read()

        print(changelog_contents)

        self.assertNotIn('# mypyvalidator first_commit (', changelog_contents)
        self.assertNotIn('# mypyvalidator new (', changelog_contents)
        self.assertIn('# mypyvalidator v0.0.1 (', changelog_contents)
        self.assertIn('# mypyvalidator v0.1.0 (', changelog_contents)
        self.assertIn('# mypyvalidator v0.1.1 (', changelog_contents)
예제 #4
0
    def test__changelog_generate_header(self):
        self.create_example_repo()
        self.write_config_files(
            {'changelog.d/HEADER.md': b'# Changelog header\n'})

        changelog_generate_main()

        self.assertTrue(
            os.path.exists('artifacts/reports/changelog/changelog.md'))
        with open('artifacts/reports/changelog/changelog.md') as fh:
            changelog_contents = fh.read()

        print(changelog_contents)

        self.assertNotIn('# mypyvalidator first_commit (', changelog_contents)
        self.assertNotIn('# mypyvalidator new (', changelog_contents)
        self.assertIn('# mypyvalidator v0.0.1 (', changelog_contents)
        self.assertIn('# mypyvalidator v0.1.0 (', changelog_contents)
        self.assertIn('# mypyvalidator v0.1.1 (', changelog_contents)
        self.assertIn('# Changelog header', changelog_contents)
예제 #5
0
    def test__changelog_generate_main__nofilter_nonversons(self):
        os.environ['CHANGELOG_ONLY_VERSION_TAGS'] = 'False'

        self.create_example_repo()

        self.write_config_files({'changelog.d/6.bugfix.md': b'Make sure version filter can be turned off\n'})
        os.system('git add changelog.d/6.bugfix.md')
        os.system('git commit -a -m "sixth commit"')
        os.system('git tag -a -m "latest tag" latest')

        changelog_generate_main()

        self.assertTrue(os.path.exists('artifacts/reports/changelog/changelog.md'))
        with open('artifacts/reports/changelog/changelog.md') as fh:
            changelog_contents = fh.read()

        os.system('git log --date-order --tags --simplify-by-decoration --pretty=format:"%ct|%D"')
        print(changelog_contents)

        self.assertNotIn('# mypyvalidator first_commit (', changelog_contents)
        self.assertIn('# mypyvalidator latest (', changelog_contents)
        self.assertIn('# mypyvalidator v0.0.1 (', changelog_contents)
        self.assertIn('# mypyvalidator v0.1.0 (', changelog_contents)
        self.assertIn('# mypyvalidator v0.1.1 (', changelog_contents)