Beispiel #1
0
    def test_dunder_contains(self, name):
        self.mocked_metadata["read_metadata"].return_value = []
        repo = Repository("/tmp/backup")

        self.assertFalse(name in repo)
        repo.create_snapshot(name)
        self.assertTrue(name in repo)
Beispiel #2
0
    def test_dunder_len(self, snapshots):
        self.mocked_metadata["read_metadata"].return_value = snapshots.copy()
        repo = Repository("/tmp/backup")

        self.assertEqual(len(repo), len(snapshots))
        self.assertEqual(len(repo.snapshots), len(snapshots))

        repo.create_snapshot()

        self.assertEqual(len(repo), len(snapshots) + 1)
        self.assertEqual(len(repo.snapshots), len(snapshots) + 1)
Beispiel #3
0
    def test_create_duplicate_snapshot(self):
        # Test that if a snapshot is a duplicate, then return that duplicate snapshot
        self.mocked_metadata["read_metadata"].return_value = []
        repo = Repository("/tmp/backup")
        name = "new-snapshot"

        first = repo.create_snapshot(name)
        second = repo.create_snapshot(name)

        self.assertIs(first, second)
        self.assertTrue(name in repo)
        self.assertEqual(len(repo), 1)
Beispiel #4
0
    def test_returns_snapshot_object(self):
        self.mocked_metadata["read_metadata"].return_value = []
        repo = Repository("/tmp/backup")

        self.assertIsInstance(repo.create_snapshot(), Snapshot)