Index: third_party/buildbot_7_12/buildbot/test/test_console.py |
diff --git a/third_party/buildbot_7_12/buildbot/test/test_console.py b/third_party/buildbot_7_12/buildbot/test/test_console.py |
deleted file mode 100644 |
index faa82ffe6a9009e3fa29b8b8ffec71c404e64733..0000000000000000000000000000000000000000 |
--- a/third_party/buildbot_7_12/buildbot/test/test_console.py |
+++ /dev/null |
@@ -1,155 +0,0 @@ |
-# -*- test-case-name: buildbot.test.test_console -*- |
- |
-from twisted.trial import unittest |
- |
-from buildbot.status import builder |
-from buildbot.status.web import console |
-from buildbot.test.runutils import RunMixin |
-from buildbot.changes import changes |
- |
-try: |
- reversed |
-except NameError: |
- def reversed(data): |
- for index in xrange(len(data)-1,-1,-1): |
- yield data[index] |
- |
-# Configuration to be used by the getBuildDetailsTest |
-run_config = """ |
-from buildbot.process import factory |
-from buildbot.steps.shell import ShellCommand, WithProperties |
-from buildbot.buildslave import BuildSlave |
-from buildbot.config import BuilderConfig |
-s = factory.s |
- |
-BuildmasterConfig = c = {} |
-c['slaves'] = [BuildSlave('bot1', 'sekrit', properties={'slprop':'slprop'})] |
-c['schedulers'] = [] |
-c['slavePortnum'] = 0 |
-c['properties'] = { 'global' : 'global' } |
- |
-f1 = factory.BuildFactory([s(ShellCommand, flunkOnFailure=True, |
- command=['ls'], |
- workdir='.', timeout=10)]) |
- |
-f2 = factory.BuildFactory([s(ShellCommand, flunkOnFailure=True, |
- command=['ls -WillFail'], |
- workdir='.', timeout=10)]) |
- |
-b1 = BuilderConfig(name='full1', slavename='bot1', builddir='bd1', factory=f1) |
-b2 = BuilderConfig(name='full2', slavename='bot1', builddir='bd2', factory=f2) |
-c['builders'] = [b1, b2] |
-""" |
- |
- |
-# Tests for the global functions in console.py |
-class ConsoleTest(unittest.TestCase): |
- # Test for console.getResultsClass |
- def testgetResultsClass(self): |
- self.assertEqual(console.getResultsClass(None, None, True), "running") |
- self.assertEqual(console.getResultsClass(None, builder.SUCCESS, False), "notstarted") |
- self.assertEqual(console.getResultsClass(builder.SUCCESS, builder.SUCCESS, False), "success") |
- self.assertEqual(console.getResultsClass(builder.SUCCESS, builder.FAILURE, False), "success") |
- self.assertEqual(console.getResultsClass(builder.FAILURE, builder.FAILURE, False), "warnings") |
- self.assertEqual(console.getResultsClass(builder.FAILURE, builder.SUCCESS, False), "failure") |
- self.assertEqual(console.getResultsClass(builder.FAILURE, None, False), "failure") |
- self.assertEqual(console.getResultsClass(builder.FAILURE, builder.EXCEPTION, False), "failure") |
- self.assertEqual(console.getResultsClass(builder.FAILURE, builder.FAILURE, True), "running") |
- self.assertEqual(console.getResultsClass(builder.EXCEPTION, builder.FAILURE, False), "exception") |
- |
-def _createDummyChange(revision): |
- return changes.Change('Committer', ['files'], 'comment', revision=revision) |
- |
-class TimeRevisionComparatorTest(unittest.TestCase): |
- def setUp(self): |
- self.comparator = console.TimeRevisionComparator() |
- |
- def testSameRevisionIsNotGreater(self): |
- change = _createDummyChange('abcdef') |
- self.assertFalse(self.comparator.isRevisionEarlier(change, change)) |
- |
- def testOrdersDifferentRevisions(self): |
- first = _createDummyChange('first_rev') |
- second = _createDummyChange('second_rev') |
- |
- second.when += 1 # Make sure it's "after" the first |
- self.assertTrue(self.comparator.isRevisionEarlier(first, second)) |
- self.assertFalse(self.comparator.isRevisionEarlier(second, first)) |
- |
- def testReturnedKeySortsRevisionsCorrectly(self): |
- my_changes = [_createDummyChange('rev' + str(i)) |
- for i in range(1, 6)] |
- for i in range(1, len(my_changes)): |
- my_changes[i].when = my_changes[i-1].when + 1 |
- |
- reversed_changes = list(reversed(my_changes)) |
- reversed_changes.sort(lambda a,b: cmp(getattr(a, self.comparator.getSortingKey()), getattr(b, self.comparator.getSortingKey()))) |
- self.assertEqual(my_changes, reversed_changes) |
- |
-class IntegerRevisionComparatorTest(unittest.TestCase): |
- def setUp(self): |
- self.comparator = console.IntegerRevisionComparator() |
- |
- def testSameRevisionIsNotGreater(self): |
- change = _createDummyChange('1') |
- self.assertFalse(self.comparator.isRevisionEarlier(change, change)) |
- |
- def testOrdersDifferentRevisions(self): |
- first = _createDummyChange('1') |
- second = _createDummyChange('2') |
- |
- self.assertTrue(self.comparator.isRevisionEarlier(first, second)) |
- self.assertFalse(self.comparator.isRevisionEarlier(second, first)) |
- |
- def testIsValidRevisionAcceptsIntegers(self): |
- for rev in range(100): |
- self.assertTrue(self.comparator.isValidRevision(str(rev))) |
- |
- def testIsValidRevisionDoesNotAcceptNonIntegers(self): |
- self.assertFalse(self.comparator.isValidRevision('revision')) |
- |
- def testReturnedKeySortsRevisionsCorrectly(self): |
- my_changes = [_createDummyChange(str(i)) for i in range(1, 6)] |
- |
- reversed_changes = list(reversed(my_changes)) |
- reversed_changes.sort(lambda a,b: cmp(getattr(a, self.comparator.getSortingKey()), getattr(b, self.comparator.getSortingKey()))) |
- self.assertEqual(my_changes, reversed_changes) |
- |
-# Helper class to mock a request. We define only what we really need. |
-class MockRequest(object): |
- def childLink(self, link): |
- return link |
- |
-# Class to test the method getBuildDetails in ConsoleStatusResource. |
-class GetBuildDetailsTests(RunMixin, unittest.TestCase): |
- # Test ConsoleStatusResource.getBuildDetails with a success and a failure case. |
- def testgetBuildDetails(self): |
- # run an actual build with a step that will succeed, then another build with |
- # a step that will fail, then make sure the build details generated contains |
- # the right data. |
- d = self.master.loadConfig(run_config) |
- d.addCallback(lambda res: self.master.startService()) |
- d.addCallback(lambda res: self.connectOneSlave("bot1")) |
- d.addCallback(lambda res: self.requestBuild("full1")) |
- |
- # Make sure the build details returned is an empty string to signify that |
- # everything was ok |
- def expectSuccess(bs): |
- console_status = console.ConsoleStatusResource() |
- results = console_status.getBuildDetails(MockRequest(), "buildername", bs); |
- self.assertEqual(results, "") |
- d.addCallback(expectSuccess) |
- |
- d.addCallback(lambda res: self.requestBuild("full2")) |
- |
- # Make sure the build details returned contained the expected error. |
- def expectFailure(bs): |
- expected_details = """<li> buildername : 'ls -WillFail' failed. |
-[ <a href="../builders/buildername/builds/0/steps/shell/logs/stdio">stdio</a> ]""" |
- console_status = console.ConsoleStatusResource() |
- results = console_status.getBuildDetails(MockRequest(), "buildername", bs); |
- self.assertEqual(results, expected_details) |
- |
- d.addCallback(expectFailure) |
- return d |
- |