def afterSetUp(self): super(TestMigrate, self).afterSetUp() self.version = Version(9, 9, 9) self.migration = Migration() self.oldCurrentVersion = self.migration._currentVersion self.migration._currentVersion = self.getTestVersion
def testDetermineSteps(self): m = Migration(noopts=True) m.allSteps = [ MyTestStep(1, 0, 0), MyTestStep(1, 1, 0), MyTestStep(1, 2, 0), ] m.options.level='1.1.0' self.assertEquals(m.determineSteps(), m.allSteps[1:]) m.options.level = None m.options.steps = ['MyTestStep_1.1.0'] self.assertEquals(m.determineSteps(), m.allSteps[1:2])
def testDetermineSteps(self): m = Migration(noopts=True) m.allSteps = [ MyTestStep(1, 0, 0), MyTestStep(1, 1, 0), MyTestStep(1, 2, 0), ] m.options.level = '1.1.0' self.assertEquals(m.determineSteps(), m.allSteps[1:]) m.options.level = None m.options.steps = ['MyTestStep_1.1.0'] self.assertEquals(m.determineSteps(), m.allSteps[1:2])
def afterSetUp(self): super(TestMigrate, self).afterSetUp() self.version = Version(9,9,9) self.migration = Migration() self.oldCurrentVersion = self.migration._currentVersion self.migration._currentVersion = self.getTestVersion
def testGetEarliestAppropriateStepVersion(self): m = Migration(noopts=True) self.assertEquals(Version(1, 0, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 50))) self.assertEquals(Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 70))) self.assertEquals(Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 99))) self.assertEquals(Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 2, 0))) m.allSteps.append(MyTestStep(98, 3, 71)) self.assertEquals(Version(98, 3, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(99, 0, 1)))
def testGetEarliestAppropriateStepVersion(self): m = Migration(noopts=True) self.assertEquals( Version(1, 0, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 50))) self.assertEquals( Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 70))) self.assertEquals( Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 99))) self.assertEquals( Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 2, 0))) m.allSteps.append(MyTestStep(98, 3, 71)) self.assertEquals( Version(98, 3, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(99, 0, 1)))
class TestMigrate(ZenModelBaseTest): def afterSetUp(self): super(TestMigrate, self).afterSetUp() self.version = Version(9, 9, 9) self.migration = Migration() self.oldCurrentVersion = self.migration._currentVersion self.migration._currentVersion = self.getTestVersion def getTestVersion(self): return self.version def assertIncludesVersions(self, steps, versions): includedVersions = map(lambda x: x.version, steps) for version in versions: if version not in includedVersions: self.assert_( False, "Version %s not included in steps: %s" % (version.short(), map(lambda x: x.name, steps))) def testStepDeterminationUpgrades(self): self.migration.allSteps = allsteps self.version = Version(99, 99, 99) steps = self.migration.determineSteps() self.assertEqual(len(steps), 0) self.version = Version(0, 0, 0) steps = self.migration.determineSteps() self.assertEqual(len(steps), len(allsteps)) self.version = Version(4, 1, 1) steps = self.migration.determineSteps() self.assertEqual(len(steps), 2) self.assertIncludesVersions(steps, [x.version for x in (step420, step41_70)]) self.version = Version(4, 1, 0) steps = self.migration.determineSteps() self.assertEqual(len(steps), 3) self.assertIncludesVersions( steps, [x.version for x in (step420, step41_70, step411)]) self.version = Version(4, 0, 2) steps = self.migration.determineSteps() self.assertEqual(len(steps), 5) self.assertIncludesVersions(steps, [ x.version for x in (step420, step41_70, step411, step410, step40_70) ]) self.version = Version(4, 0, 1) steps = self.migration.determineSteps() self.assertEqual(len(steps), 6) self.assertIncludesVersions(steps, [ x.version for x in (step420, step41_70, step411, step410, step402, step40_70) ]) self.version = Version(4, 0, 0) steps = self.migration.determineSteps() self.assertEqual(len(steps), 7) self.assertIncludesVersions(steps, [ x.version for x in (step420, step41_70, step411, step410, step402, step401, step40_70) ]) def testStepDeterminationInPlace(self): self.migration.allSteps = realVersionSteps self.version = Version(4, 2, 0) steps = self.migration.determineSteps() self.assertEqual(len(steps), 1) self.assertIncludesVersions(steps, [step420.version]) def testGetEarliestAppropriateStepVersion(self): m = Migration(noopts=True) self.assertEquals( Version(1, 0, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 50))) self.assertEquals( Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 70))) self.assertEquals( Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 99))) self.assertEquals( Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 2, 0))) m.allSteps.append(MyTestStep(98, 3, 71)) self.assertEquals( Version(98, 3, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(99, 0, 1))) def testDetermineSteps(self): m = Migration(noopts=True) m.allSteps = [ MyTestStep(1, 0, 0), MyTestStep(1, 1, 0), MyTestStep(1, 2, 0), ] m.options.level = '1.1.0' self.assertEquals(m.determineSteps(), m.allSteps[1:]) m.options.level = None m.options.steps = ['MyTestStep_1.1.0'] self.assertEquals(m.determineSteps(), m.allSteps[1:2])
class TestMigrate(ZenModelBaseTest): def afterSetUp(self): super(TestMigrate, self).afterSetUp() self.version = Version(9,9,9) self.migration = Migration() self.oldCurrentVersion = self.migration._currentVersion self.migration._currentVersion = self.getTestVersion def getTestVersion(self): return self.version def assertIncludesVersions(self, steps, versions): includedVersions = map(lambda x:x.version, steps) for version in versions: if version not in includedVersions: self.assert_(False, "Version %s not included in steps: %s" % (version.short(), map(lambda x:x.name, steps))) def testStepDeterminationUpgrades(self): self.migration.allSteps = allsteps self.version = Version(99,99,99) steps = self.migration.determineSteps() self.assertEqual(len(steps), 0) self.version = Version(0,0,0) steps = self.migration.determineSteps() self.assertEqual(len(steps), len(allsteps)) self.version = Version(4,1,1) steps = self.migration.determineSteps() self.assertEqual(len(steps), 2) self.assertIncludesVersions(steps, [x.version for x in (step420, step41_70)]) self.version = Version(4,1,0) steps = self.migration.determineSteps() self.assertEqual(len(steps), 3) self.assertIncludesVersions(steps, [x.version for x in (step420, step41_70, step411)]) self.version = Version(4,0,2) steps = self.migration.determineSteps() self.assertEqual(len(steps), 5) self.assertIncludesVersions(steps, [x.version for x in (step420, step41_70, step411, step410, step40_70)]) self.version = Version(4,0,1) steps = self.migration.determineSteps() self.assertEqual(len(steps), 6) self.assertIncludesVersions(steps, [x.version for x in (step420, step41_70, step411, step410, step402, step40_70)]) self.version = Version(4,0,0) steps = self.migration.determineSteps() self.assertEqual(len(steps), 7) self.assertIncludesVersions(steps, [x.version for x in (step420, step41_70, step411, step410, step402, step401, step40_70)]) def testStepDeterminationInPlace(self): self.migration.allSteps = realVersionSteps self.version = Version(4,2,0) steps = self.migration.determineSteps() self.assertEqual(len(steps), 1) self.assertIncludesVersions(steps, [step420.version]) def testGetEarliestAppropriateStepVersion(self): m = Migration(noopts=True) self.assertEquals(Version(1, 0, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 50))) self.assertEquals(Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 70))) self.assertEquals(Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 1, 99))) self.assertEquals(Version(1, 1, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(1, 2, 0))) m.allSteps.append(MyTestStep(98, 3, 71)) self.assertEquals(Version(98, 3, 70), m.getEarliestAppropriateStepVersion(codeVers=Version(99, 0, 1))) def testDetermineSteps(self): m = Migration(noopts=True) m.allSteps = [ MyTestStep(1, 0, 0), MyTestStep(1, 1, 0), MyTestStep(1, 2, 0), ] m.options.level='1.1.0' self.assertEquals(m.determineSteps(), m.allSteps[1:]) m.options.level = None m.options.steps = ['MyTestStep_1.1.0'] self.assertEquals(m.determineSteps(), m.allSteps[1:2])