PageRenderTime 39ms CodeModel.GetById 16ms RepoModel.GetById 0ms app.codeStats 0ms

/scalr-2/tags/scalr-2.0.0/app/src/LibWebta/tests/simpletest/extensions/testdox/test.php

http://scalr.googlecode.com/
PHP | 106 lines | 91 code | 13 blank | 2 comment | 0 complexity | d726e57549ff529618d7bfdd1af55779 MD5 | raw file
Possible License(s): LGPL-2.1, Apache-2.0, GPL-3.0
  1. <?php
  2. require_once dirname(__FILE__) . '/../../autorun.php';
  3. require_once dirname(__FILE__) . '/../../extensions/testdox.php';
  4. // uncomment to see test dox in action
  5. //SimpleTest::prefer(new TestDoxReporter());
  6. class TestOfTestDoxReporter extends UnitTestCase {
  7. function testIsAnInstanceOfSimpleScorerAndReporter() {
  8. $dox = new TestDoxReporter();
  9. $this->assertIsA($dox, 'SimpleScorer');
  10. $this->assertIsA($dox, 'SimpleReporter');
  11. }
  12. function testOutputsNameOfTestCase() {
  13. $dox = new TestDoxReporter();
  14. ob_start();
  15. $dox->paintCaseStart('TestOfTestDoxReporter');
  16. $buffer = ob_get_clean();
  17. $this->assertWantedPattern('/^TestDoxReporter/', $buffer);
  18. }
  19. function testOutputOfTestCaseNameFilteredByConstructParameter() {
  20. $dox = new TestDoxReporter('/^(.*)Test$/');
  21. ob_start();
  22. $dox->paintCaseStart('SomeGreatWidgetTest');
  23. $buffer = ob_get_clean();
  24. $this->assertWantedPattern('/^SomeGreatWidget/', $buffer);
  25. }
  26. function testIfTest_case_patternIsEmptyAssumeEverythingMatches() {
  27. $dox = new TestDoxReporter('');
  28. ob_start();
  29. $dox->paintCaseStart('TestOfTestDoxReporter');
  30. $buffer = ob_get_clean();
  31. $this->assertWantedPattern('/^TestOfTestDoxReporter/', $buffer);
  32. }
  33. function testEmptyLineInsertedWhenCaseEnds() {
  34. $dox = new TestDoxReporter();
  35. ob_start();
  36. $dox->paintCaseEnd('TestOfTestDoxReporter');
  37. $buffer = ob_get_clean();
  38. $this->assertEqual("\n", $buffer);
  39. }
  40. function testPaintsTestMethodInTestDoxFormat() {
  41. $dox = new TestDoxReporter();
  42. ob_start();
  43. $dox->paintMethodStart('testSomeGreatTestCase');
  44. $buffer = ob_get_clean();
  45. $this->assertEqual("- some great test case", $buffer);
  46. unset($buffer);
  47. $random = rand(100, 200);
  48. ob_start();
  49. $dox->paintMethodStart("testRandomNumberIs{$random}");
  50. $buffer = ob_get_clean();
  51. $this->assertEqual("- random number is {$random}", $buffer);
  52. }
  53. function testDoesNotOutputAnythingOnNoneTestMethods() {
  54. $dox = new TestDoxReporter();
  55. ob_start();
  56. $dox->paintMethodStart('nonMatchingMethod');
  57. $buffer = ob_get_clean();
  58. $this->assertEqual('', $buffer);
  59. }
  60. function testPaintMethodAddLineBreak() {
  61. $dox = new TestDoxReporter();
  62. ob_start();
  63. $dox->paintMethodEnd('someMethod');
  64. $buffer = ob_get_clean();
  65. $this->assertEqual("\n", $buffer);
  66. $this->assertNoErrors();
  67. }
  68. function testProperlySpacesSingleLettersInMethodName() {
  69. $dox = new TestDoxReporter();
  70. ob_start();
  71. $dox->paintMethodStart('testAVerySimpleAgainAVerySimpleMethod');
  72. $buffer = ob_get_clean();
  73. $this->assertEqual('- a very simple again a very simple method', $buffer);
  74. }
  75. function testOnFailureThisPrintsFailureNotice() {
  76. $dox = new TestDoxReporter();
  77. ob_start();
  78. $dox->paintFail();
  79. $buffer = ob_get_clean();
  80. $this->assertEqual(' [FAILED]', $buffer);
  81. }
  82. function testWhenMatchingMethodNamesTestPrefixIsCaseInsensitive() {
  83. $dox = new TestDoxReporter();
  84. ob_start();
  85. $dox->paintMethodStart('TESTSupportsAllUppercaseTestPrefixEvenThoughIDoNotKnowWhyYouWouldDoThat');
  86. $buffer = ob_get_clean();
  87. $this->assertEqual(
  88. '- supports all uppercase test prefix even though i do not know why you would do that',
  89. $buffer
  90. );
  91. }
  92. }
  93. ?>