Пример #1
0
    def test_release_stress(self) -> None:

        releaser = Semversioner(path=self.directory_name)

        expected = []
        for i in range(100):
            releaser.add_change("major", f"My description {i}")
            expected.append({
                'type': 'major',
                'description': f"My description {i}"
            })

        expected = sorted(expected, key=lambda k: k['type'] + k['description'])
        self.assertEqual(
            releaser.get_status(), {
                'version': '0.0.0',
                'next_version': '1.0.0',
                'unreleased_changes': expected,
            })
        releaser.release()
        self.assertEqual(releaser.get_status(), {
            'version': '1.0.0',
            'next_version': None,
            'unreleased_changes': [],
        })
Пример #2
0
    def test_release(self) -> None:

        releaser = Semversioner(path=self.directory_name)

        releaser.add_change("minor", "My description")
        releaser.add_change("major", "My description")
        self.assertEqual(
            releaser.get_status(), {
                'version':
                '0.0.0',
                'next_version':
                '1.0.0',
                'unreleased_changes': [{
                    'type': 'major',
                    'description': 'My description'
                }, {
                    'type': 'minor',
                    'description': 'My description'
                }],
            })
        releaser.release()
        self.assertEqual(releaser.get_status(), {
            'version': '1.0.0',
            'next_version': None,
            'unreleased_changes': [],
        })
        with self.assertRaises(SystemExit):
            releaser.release()