Example #1
0
    def test_two_revisions(self):
        """Test two revision."""
        self.mock.now.return_value = datetime.datetime(2017, 1, 1, 0, 0)
        to_delete = deploy._versions_to_delete([
            deploy.Version('1', datetime.datetime(2016, 1, 1, 0, 0), 0.0),
            deploy.Version('2', datetime.datetime(2017, 1, 1, 0, 0), 1.0),
        ], 24 * 60)

        self.assertEqual([], to_delete)
Example #2
0
    def test_single_version(self):
        """Test single revision."""
        self.mock.now.return_value = datetime.datetime(2017, 1, 1, 0, 0)
        to_delete = deploy._versions_to_delete(
            [deploy.Version("1", datetime.datetime(2017, 1, 1, 0, 0), 1.0)],
            24 * 60)

        self.assertEqual([], to_delete)
Example #3
0
    def test_cutoff(self):
        """Test various cutoffs."""
        self.mock.now.return_value = datetime.datetime(2017, 1, 30, 0, 0)
        to_delete = deploy._versions_to_delete([
            deploy.Version('1', datetime.datetime(2016, 1, 1, 0, 0), 0.0),
            deploy.Version('2', datetime.datetime(2017, 1, 28, 23, 59), 0.0),
            deploy.Version('3', datetime.datetime(2017, 1, 29, 0, 0), 0.0),
            deploy.Version('4', datetime.datetime(2017, 1, 30, 0, 0), 1.0),
        ], 24 * 60)

        self.assertEqual([
            deploy.Version('1', datetime.datetime(2016, 1, 1, 0, 0), 0.0),
            deploy.Version('2', datetime.datetime(2017, 1, 28, 23, 59), 0.0),
        ], to_delete)

        to_delete = deploy._versions_to_delete([
            deploy.Version('1', datetime.datetime(2016, 1, 1, 0, 0), 0.0),
            deploy.Version('2', datetime.datetime(2017, 1, 28, 23, 59), 0.0),
            deploy.Version('3', datetime.datetime(2017, 1, 29, 0, 1), 0.0),
            deploy.Version('4', datetime.datetime(2017, 1, 30, 0, 0), 1.0),
        ], 24 * 60)

        self.assertEqual([
            deploy.Version('1', datetime.datetime(2016, 1, 1, 0, 0), 0.0),
        ], to_delete)

        to_delete = deploy._versions_to_delete([
            deploy.Version('1', datetime.datetime(2016, 1, 1, 0, 0), 0.0),
            deploy.Version('2', datetime.datetime(2017, 1, 29, 0, 1), 0.0),
            deploy.Version('3', datetime.datetime(2017, 1, 29, 0, 2), 0.0),
            deploy.Version('4', datetime.datetime(2017, 1, 30, 0, 0), 1.0),
        ], 24 * 60)

        self.assertEqual([], to_delete)

        # Latest version should never be deleted.
        to_delete = deploy._versions_to_delete([
            deploy.Version('1', datetime.datetime(2016, 1, 1, 0, 0), 0.0),
            deploy.Version('2', datetime.datetime(2016, 1, 29, 0, 1), 0.0),
            deploy.Version('3', datetime.datetime(2016, 1, 29, 0, 2), 0.0),
            deploy.Version('4', datetime.datetime(2016, 1, 30, 0, 0), 1.0),
        ], 24 * 60)

        self.assertEqual([
            deploy.Version('1', datetime.datetime(2016, 1, 1, 0, 0), 0.0),
            deploy.Version('2', datetime.datetime(2016, 1, 29, 0, 1), 0.0),
            deploy.Version('3', datetime.datetime(2016, 1, 29, 0, 2), 0.0),
        ], to_delete)