Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2014
212
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.85 KB | None | 0 0
  1. import unittest
  2.  
  3. class BaseTest(unittest.TestCase):
  4.  
  5. def testCommon(self):
  6. print 'Calling BaseTest:testCommon'
  7. value = 5
  8. self.assertEquals(value, 5)
  9.  
  10. class SubTest1(BaseTest):
  11.  
  12. def testSub1(self):
  13. print 'Calling SubTest1:testSub1'
  14. sub = 3
  15. self.assertEquals(sub, 3)
  16.  
  17.  
  18. class SubTest2(BaseTest):
  19.  
  20. def testSub2(self):
  21. print 'Calling SubTest2:testSub2'
  22. sub = 4
  23. self.assertEquals(sub, 4)
  24.  
  25. if __name__ == '__main__':
  26. unittest.main()
  27.  
  28. Calling BaseTest:testCommon
  29. .Calling BaseTest:testCommon
  30. .Calling SubTest1:testSub1
  31. .Calling BaseTest:testCommon
  32. .Calling SubTest2:testSub2
  33. .
  34. ----------------------------------------------------------------------
  35. Ran 5 tests in 0.000s
  36.  
  37. OK
  38.  
  39. import unittest
  40.  
  41. class CommonTests(object):
  42. def testCommon(self):
  43. print 'Calling BaseTest:testCommon'
  44. value = 5
  45. self.assertEquals(value, 5)
  46.  
  47. class SubTest1(unittest.TestCase, CommonTests):
  48.  
  49. def testSub1(self):
  50. print 'Calling SubTest1:testSub1'
  51. sub = 3
  52. self.assertEquals(sub, 3)
  53.  
  54.  
  55. class SubTest2(unittest.TestCase, CommonTests):
  56.  
  57. def testSub2(self):
  58. print 'Calling SubTest2:testSub2'
  59. sub = 4
  60. self.assertEquals(sub, 4)
  61.  
  62. if __name__ == '__main__':
  63. unittest.main()
  64.  
  65. import unittest
  66.  
  67. class CommonTests(unittest.TestCase):
  68. def common_assertion(self, foo, bar, baz):
  69. # whatever common code
  70. self.assertEqual(foo(bar), baz)
  71.  
  72. class BaseTest(CommonTests):
  73.  
  74. def testCommon(self):
  75. print 'Calling BaseTest:testCommon'
  76. value = 5
  77. self.assertEquals(value, 5)
  78.  
  79. class SubTest1(CommonTests):
  80.  
  81. def testSub1(self):
  82. print 'Calling SubTest1:testSub1'
  83. sub = 3
  84. self.assertEquals(sub, 3)
  85.  
  86. class SubTest2(CommonTests):
  87.  
  88. def testSub2(self):
  89. print 'Calling SubTest2:testSub2'
  90. sub = 4
  91. self.assertEquals(sub, 4)
  92.  
  93. if __name__ == '__main__':
  94. unittest.main()
  95.  
  96. class BaseTest(unittest.TestCase):
  97.  
  98. @classmethod
  99. def setUpClass(cls):
  100. if cls is BaseTest:
  101. raise unittest.SkipTest("Skip BaseTest tests, it's a base class")
  102. super(BaseTest, cls).setUpClass()
  103.  
  104. def skipBaseTest(obj):
  105. if type(obj) is BaseTest:
  106. return unittest.skip("BaseTest tests skipped")
  107. return lambda func: func
  108.  
  109. del(BaseTest)
  110.  
  111. import unittest
  112.  
  113. class BaseTest(unittest.TestCase):
  114.  
  115. def testCommon(self):
  116. print 'Calling BaseTest:testCommon'
  117. value = 5
  118. self.assertEquals(value, 5)
  119.  
  120. class SubTest1(BaseTest):
  121.  
  122. def testSub1(self):
  123. print 'Calling SubTest1:testSub1'
  124. sub = 3
  125. self.assertEquals(sub, 3)
  126.  
  127.  
  128. class SubTest2(BaseTest):
  129.  
  130. def testSub2(self):
  131. print 'Calling SubTest2:testSub2'
  132. sub = 4
  133. self.assertEquals(sub, 4)
  134.  
  135. del(BaseTest)
  136.  
  137. if __name__ == '__main__':
  138. unittest.main()
  139.  
  140. class BaseTest(unittest.TestCase):
  141. @classmethod
  142. def setUpClass(cls):
  143. cls._test_methods = []
  144. if cls is BaseTest:
  145. for name in dir(cls):
  146. if name.startswith('test') and callable(getattr(cls, name)):
  147. cls._test_methods.append((name, getattr(cls, name)))
  148. setattr(cls, name, lambda self: None)
  149.  
  150. @classmethod
  151. def tearDownClass(cls):
  152. if cls is BaseTest:
  153. for name, method in cls._test_methods:
  154. setattr(cls, name, method)
  155. cls._test_methods = []
  156.  
  157. class BaseTest(unittest.TestCase):
  158. def setUp(self):
  159. print 'Calling BaseTest:testCommon'
  160. value = 5
  161. self.assertEquals(value, 5)
  162.  
  163.  
  164. class SubTest1(BaseTest):
  165. def testSub1(self):
  166. print 'Calling SubTest1:testSub1'
  167. sub = 3
  168. self.assertEquals(sub, 3)
  169.  
  170.  
  171. class SubTest2(BaseTest):
  172. def testSub2(self):
  173. print 'Calling SubTest2:testSub2'
  174. sub = 4
  175. self.assertEquals(sub, 4)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement