teabag 0.3.5 → 0.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. data/README.md +59 -59
  2. data/app/assets/javascripts/teabag-jasmine.js +229 -190
  3. data/app/assets/javascripts/teabag-mocha.js +217 -192
  4. data/app/assets/javascripts/teabag-qunit.js +3023 -0
  5. data/app/assets/javascripts/teabag/base/reporters/console.coffee +42 -26
  6. data/app/assets/javascripts/teabag/base/reporters/html.coffee +4 -3
  7. data/app/assets/javascripts/teabag/base/reporters/html/base_view.coffee +49 -0
  8. data/app/assets/javascripts/teabag/base/reporters/html/suite_view.coffee +1 -1
  9. data/app/assets/javascripts/teabag/base/runner.coffee +10 -0
  10. data/app/assets/javascripts/teabag/base/teabag.coffee +15 -1
  11. data/app/assets/javascripts/teabag/jasmine.coffee +53 -5
  12. data/app/assets/javascripts/teabag/mocha.coffee +51 -5
  13. data/app/assets/javascripts/teabag/mocha/reporters/console.coffee +3 -2
  14. data/app/assets/javascripts/teabag/qunit.coffee +61 -0
  15. data/app/assets/javascripts/teabag/qunit/reporters/console.coffee +25 -0
  16. data/app/assets/javascripts/teabag/qunit/reporters/html.coffee +80 -0
  17. data/app/helpers/teabag/spec_helper.rb +6 -14
  18. data/lib/generators/teabag/install/templates/initializer.rb +2 -1
  19. data/lib/teabag/configuration.rb +15 -4
  20. data/lib/teabag/console.rb +5 -11
  21. data/lib/teabag/drivers/base_driver.rb +10 -0
  22. data/lib/teabag/{phantomjs → drivers/phantomjs}/runner.coffee +0 -0
  23. data/lib/teabag/drivers/phantomjs_driver.rb +25 -0
  24. data/lib/teabag/drivers/selenium_driver.rb +29 -0
  25. data/lib/teabag/formatters/base_formatter.rb +4 -2
  26. data/lib/teabag/formatters/{progress_formatter.rb → dot_formatter.rb} +5 -5
  27. data/lib/teabag/formatters/swayze_or_oprah_formatter.rb +1 -1
  28. data/lib/teabag/formatters/tap_y_formatter.rb +85 -0
  29. data/lib/teabag/result.rb +18 -29
  30. data/lib/teabag/runner.rb +2 -2
  31. data/lib/teabag/version.rb +1 -1
  32. data/spec/dummy/config/initializers/teabag.rb +6 -0
  33. data/spec/dummy/log/development.log +87684 -0
  34. data/spec/dummy/log/test.log +556 -0
  35. data/spec/dummy/tmp/cache/assets/C13/B50/sprockets%2F431452d41e5087d2211162d23c63789b +0 -0
  36. data/spec/dummy/tmp/cache/assets/C18/F90/sprockets%2F369a3f720404378b4162541fd432742d +0 -0
  37. data/spec/dummy/tmp/cache/assets/C2B/5D0/sprockets%2F98606f6051a5fc71379af24236793353 +0 -0
  38. data/spec/dummy/tmp/cache/assets/C4E/9B0/sprockets%2Fa807397434c9262c3d62da3e91152184 +0 -0
  39. data/spec/dummy/tmp/cache/assets/C59/250/sprockets%2Fa80d3fe493d2476e58c4323996064512 +0 -0
  40. data/spec/dummy/tmp/cache/assets/C72/150/sprockets%2F4194031b4b51b6422c14ac697e3455e5 +0 -0
  41. data/spec/dummy/tmp/cache/assets/C75/D50/sprockets%2F5302968a40e08d2c011aa38666d273f6 +0 -0
  42. data/spec/dummy/tmp/cache/assets/C78/6B0/sprockets%2F173640f631a07f48c900a9c2923c825b +0 -0
  43. data/spec/dummy/tmp/cache/assets/C78/EF0/sprockets%2F65f827a4a5337d05d037845161b41ab8 +0 -0
  44. data/spec/dummy/tmp/cache/assets/C78/F80/sprockets%2F9161622ddd251097a4ab816b8220984c +0 -0
  45. data/spec/dummy/tmp/cache/assets/C7A/EC0/sprockets%2F5c16e4214f5662e1b27932a57c43491b +0 -0
  46. data/spec/dummy/tmp/cache/assets/C7C/AC0/sprockets%2F29124be1160817c61bb4878894b2ba55 +0 -0
  47. data/spec/dummy/tmp/cache/assets/C80/F70/sprockets%2Fe5c9811902c221828ea647978f000be3 +0 -0
  48. data/spec/dummy/tmp/cache/assets/C87/2C0/sprockets%2F60f61c07481249fc7922664609fcae52 +0 -0
  49. data/spec/dummy/tmp/cache/assets/C89/700/sprockets%2F259935a7704fef0069303ea63fa89408 +0 -0
  50. data/spec/dummy/tmp/cache/assets/C8A/460/sprockets%2F77bffd9959420103906722b404ae8d59 +0 -0
  51. data/spec/dummy/tmp/cache/assets/C91/FA0/sprockets%2F2eb81283f5789ae91a69344552db3856 +0 -0
  52. data/spec/dummy/tmp/cache/assets/C97/430/sprockets%2Fc049582fd1c9178ff983323f75326f64 +0 -0
  53. data/spec/dummy/tmp/cache/assets/CA2/F50/sprockets%2F86094c5d1b6399d614b0771a3a0a45b0 +0 -0
  54. data/spec/dummy/tmp/cache/assets/CA6/2F0/sprockets%2F20040c18b672e4c4d2731a2a929d8b97 +0 -0
  55. data/spec/dummy/tmp/cache/assets/CA9/C40/sprockets%2F932b7e2cd1e067289ab51190800814df +0 -0
  56. data/spec/dummy/tmp/cache/assets/CAA/0C0/sprockets%2F057b0ce384f16d9202ae84473436cc35 +0 -0
  57. data/spec/dummy/tmp/cache/assets/CAD/410/sprockets%2F651414e5c7e86f05c5108dc71626b25c +0 -0
  58. data/spec/dummy/tmp/cache/assets/CB4/6A0/sprockets%2F7373c9de844b711519cb49c4f1b16822 +0 -0
  59. data/spec/dummy/tmp/cache/assets/CBB/FA0/sprockets%2F74922109263bdc965b2e9567eec6d154 +0 -0
  60. data/spec/dummy/tmp/cache/assets/CBF/630/sprockets%2F707d2db81468088470d476abff35388d +0 -0
  61. data/spec/dummy/tmp/cache/assets/CCE/C50/sprockets%2Fe12774c2fea852112414bb379a71f31a +0 -0
  62. data/spec/dummy/tmp/cache/assets/CD3/460/sprockets%2F7f3f6802b0b309ed142d0b671c9640c4 +0 -0
  63. data/spec/dummy/tmp/cache/assets/CD9/DD0/sprockets%2Fe5774759168a731da1c1149ecf0e1b03 +0 -0
  64. data/spec/dummy/tmp/cache/assets/CDB/630/sprockets%2Ffd1626fe1016c81d57217f7f80c4370a +0 -0
  65. data/spec/dummy/tmp/cache/assets/CE0/090/sprockets%2F48d5d35ae87d0723318b8bc257fa2237 +0 -0
  66. data/spec/dummy/tmp/cache/assets/CE1/250/sprockets%2Ffdc680a0d4383d37910e549ca96f5303 +0 -0
  67. data/spec/dummy/tmp/cache/assets/CE1/730/sprockets%2Fa1678837061e18d7aca0286c07acf676 +0 -0
  68. data/spec/dummy/tmp/cache/assets/CE2/190/sprockets%2F0183b0f4e9f302b8677a5e31c45c89c5 +0 -0
  69. data/spec/dummy/tmp/cache/assets/CE3/1F0/sprockets%2Fe69a515d3a9d14c669be8871012a7d07 +0 -0
  70. data/spec/dummy/tmp/cache/assets/CE6/270/sprockets%2F2c98152560d18470fec8cf4c6829b4d0 +0 -0
  71. data/spec/dummy/tmp/cache/assets/CE6/7C0/sprockets%2Fa03a2c86ce6724be8542295e1cf24798 +0 -0
  72. data/spec/dummy/tmp/cache/assets/CE7/600/sprockets%2F7656791c172a6037cfffe2a226291c9e +0 -0
  73. data/spec/dummy/tmp/cache/assets/CE7/A60/sprockets%2Ff58eee249aa167d23f8220087bb46684 +0 -0
  74. data/spec/dummy/tmp/cache/assets/CE9/9E0/sprockets%2F135480d497ed7e4884462dc0ef0b80d7 +0 -0
  75. data/spec/dummy/tmp/cache/assets/CEB/090/sprockets%2F55dcd7ace406b77208c380d496e37864 +0 -0
  76. data/spec/dummy/tmp/cache/assets/CEB/680/sprockets%2F67f0794ef8c0576d5c7da34f4437305a +0 -0
  77. data/spec/dummy/tmp/cache/assets/CEB/B40/sprockets%2F1150bf8d912aa100a132251eefaf6045 +0 -0
  78. data/spec/dummy/tmp/cache/assets/CEC/360/sprockets%2F264b79dde726b36d63fee272a0609469 +0 -0
  79. data/spec/dummy/tmp/cache/assets/CF4/6F0/sprockets%2Fed96f92571224b862b84d7078b86ded3 +0 -0
  80. data/spec/dummy/tmp/cache/assets/CF7/F10/sprockets%2F8c45854ebd195b52cc42bf3f99996336 +0 -0
  81. data/spec/dummy/tmp/cache/assets/CF8/780/sprockets%2F8845b81ff27cdb57c835836c9f91a265 +0 -0
  82. data/spec/dummy/tmp/cache/assets/CFB/210/sprockets%2F9104695bfbf9a9d4b94382e6e90487a9 +0 -0
  83. data/spec/dummy/tmp/cache/assets/CFC/380/sprockets%2Fa7443cbd671446a589867dd5f4a4f989 +0 -0
  84. data/spec/dummy/tmp/cache/assets/D00/110/sprockets%2F6a6353b7723a8b21708e0fbfe04bd422 +0 -0
  85. data/spec/dummy/tmp/cache/assets/D00/F60/sprockets%2F42e279b52511c47d26c0adb125fd04e8 +0 -0
  86. data/spec/dummy/tmp/cache/assets/D03/630/sprockets%2F5d8da32dba6a7be70426a1d554773701 +0 -0
  87. data/spec/dummy/tmp/cache/assets/D04/170/sprockets%2F76ab1dc02e6c7618852708a1e05a2df3 +0 -0
  88. data/spec/dummy/tmp/cache/assets/D04/480/sprockets%2F8bd8f10500b21d2f9d94e4cd1401c936 +0 -0
  89. data/spec/dummy/tmp/cache/assets/D05/8D0/sprockets%2F319f8f235f452343f1ebf03cb262d23d +0 -0
  90. data/spec/dummy/tmp/cache/assets/D09/BF0/sprockets%2F9e6bca5d26f50d9484385d51ba04312c +0 -0
  91. data/spec/dummy/tmp/cache/assets/D0B/740/sprockets%2F781d3a2f0449451e9f35c5b0e3e2df41 +0 -0
  92. data/spec/dummy/tmp/cache/assets/D0E/570/sprockets%2F90fe371bf8091e88a712124d9cdae260 +0 -0
  93. data/spec/dummy/tmp/cache/assets/D11/D60/sprockets%2F06d6413e059dbac9a62155639ce88d2c +0 -0
  94. data/spec/dummy/tmp/cache/assets/D11/F80/sprockets%2F48961522f6cd1a15f2fe6e25f1b37a75 +0 -0
  95. data/spec/dummy/tmp/cache/assets/D12/F40/sprockets%2Fb6f95541e256c15909e0a5a5fbf2a359 +0 -0
  96. data/spec/dummy/tmp/cache/assets/D15/750/sprockets%2F8effdd3e668a4036260a3e370f3b6657 +0 -0
  97. data/spec/dummy/tmp/cache/assets/D17/710/sprockets%2Ffa49fb6823d466e79a195e0cd71340c5 +0 -0
  98. data/spec/dummy/tmp/cache/assets/D18/AF0/sprockets%2F8f572049bd1b0a6f1eb3d27979c9544c +0 -0
  99. data/spec/dummy/tmp/cache/assets/D1A/D30/sprockets%2F815a5177e9edba0c5c996182ef1b3675 +0 -0
  100. data/spec/dummy/tmp/cache/assets/D1B/730/sprockets%2Fcf6ce779d043d29aae915f599a413380 +0 -0
  101. data/spec/dummy/tmp/cache/assets/D1D/560/sprockets%2F1ca784ee7ba1922465147e7f8963eae5 +0 -0
  102. data/spec/dummy/tmp/cache/assets/D21/AD0/sprockets%2Fd471d7f687f61341d8b19efc41f39e44 +0 -0
  103. data/spec/dummy/tmp/cache/assets/D22/D70/sprockets%2Fe86ae12aa97067ed78aa94489484ec16 +0 -0
  104. data/spec/dummy/tmp/cache/assets/D2F/810/sprockets%2F1a2674b7dac8ff403c23a570475ace04 +0 -0
  105. data/spec/dummy/tmp/cache/assets/D30/480/sprockets%2Feb011f46c64dbefb1f7e21329644c240 +0 -0
  106. data/spec/dummy/tmp/cache/assets/D31/9C0/sprockets%2Fbd102a4f5a4985c3519dd6ab0295a1c6 +0 -0
  107. data/spec/dummy/tmp/cache/assets/D34/920/sprockets%2Ff234dd736ae50902ba074c526ca8f0c8 +0 -0
  108. data/spec/dummy/tmp/cache/assets/D35/7C0/sprockets%2Ff536a2606eaf7d542c0985104cb62baf +0 -0
  109. data/spec/dummy/tmp/cache/assets/D35/F00/sprockets%2F8e7f22358123b7eb5e21d17f442ce0ac +0 -0
  110. data/spec/dummy/tmp/cache/assets/D37/810/sprockets%2F99de576ce6ad42b5c0843fc21c2025b2 +0 -0
  111. data/spec/dummy/tmp/cache/assets/D37/FF0/sprockets%2F96841ca4cfae32c515077f3f5fc303b2 +0 -0
  112. data/spec/dummy/tmp/cache/assets/D39/BE0/sprockets%2Fdb727091cf3e4b4f6126c48b6063ef0b +0 -0
  113. data/spec/dummy/tmp/cache/assets/D3C/840/sprockets%2Fc6202ec91d567a85bd3d46dc43ea9108 +0 -0
  114. data/spec/dummy/tmp/cache/assets/D3D/EC0/sprockets%2F1aa82cb99ef076aea10d472b30a58979 +0 -0
  115. data/spec/dummy/tmp/cache/assets/D3F/3A0/sprockets%2F1b3734b358a405ca6f92455db8e4b5ff +0 -0
  116. data/spec/dummy/tmp/cache/assets/D45/C30/sprockets%2Fcc744877558178a3adb77c441cadce70 +0 -0
  117. data/spec/dummy/tmp/cache/assets/D48/160/sprockets%2F32bae66fd65ce3643efb543182f2e885 +0 -0
  118. data/spec/dummy/tmp/cache/assets/D49/1F0/sprockets%2F773b56f87127c6605e7d1d3faf2b6af6 +0 -0
  119. data/spec/dummy/tmp/cache/assets/D49/A10/sprockets%2Fc4656bd995a6f297c26d19b13aadb963 +0 -0
  120. data/spec/dummy/tmp/cache/assets/D4A/A50/sprockets%2Fb95795be8b937dab770541e27ddb2e70 +0 -0
  121. data/spec/dummy/tmp/cache/assets/D4C/840/sprockets%2F7732c94884c24e764f109ce2deb2a9ed +0 -0
  122. data/spec/dummy/tmp/cache/assets/D50/D70/sprockets%2Fe2a3e6c95b11e0801a4eebae3a026026 +0 -0
  123. data/spec/dummy/tmp/cache/assets/D51/400/sprockets%2Ff5e433d8a31e80985b75ce598de236be +0 -0
  124. data/spec/dummy/tmp/cache/assets/D58/870/sprockets%2F3cef1ff075a050004b74ffa13c8c4f02 +0 -0
  125. data/spec/dummy/tmp/cache/assets/D5B/9D0/sprockets%2F9c18c0aa5bbe1b323c5022c98aa09f29 +0 -0
  126. data/spec/dummy/tmp/cache/assets/D5B/E60/sprockets%2F167c229432f74a17b4c6a07bbb19aacb +0 -0
  127. data/spec/dummy/tmp/cache/assets/D5C/710/sprockets%2F9427d05cee2caa721241a25a9af1d08f +0 -0
  128. data/spec/dummy/tmp/cache/assets/D5C/CC0/sprockets%2Faa8bf6de211f2765b0a26f112b971f0c +0 -0
  129. data/spec/dummy/tmp/cache/assets/D5E/FA0/sprockets%2Fc81c371ae2d61a6aa1708262fba79e0d +0 -0
  130. data/spec/dummy/tmp/cache/assets/D60/060/sprockets%2Fe8a6ac51dd42491eaa2f9130c1629eb2 +0 -0
  131. data/spec/dummy/tmp/cache/assets/D61/1F0/sprockets%2F0c7a6176d2fc4db00bb9a74d36380fe1 +0 -0
  132. data/spec/dummy/tmp/cache/assets/D61/BD0/sprockets%2Ff96fcad988ca7fea975e538c27188605 +0 -0
  133. data/spec/dummy/tmp/cache/assets/D65/AD0/sprockets%2Fcc53fff930eaf306c15c4568cb265c00 +0 -0
  134. data/spec/dummy/tmp/cache/assets/D67/030/sprockets%2Fb8b36ba6104c8dbe6297b4e61e6d33b1 +0 -0
  135. data/spec/dummy/tmp/cache/assets/D67/BC0/sprockets%2F35d2c2b45981ade5a2db2a9c7f37a615 +0 -0
  136. data/spec/dummy/tmp/cache/assets/D69/F90/sprockets%2F6a0795b7b38bd7e6142cd1b88211dade +0 -0
  137. data/spec/dummy/tmp/cache/assets/D6A/950/sprockets%2F429b1806cb7580ebf29f9a12c33cbea6 +0 -0
  138. data/spec/dummy/tmp/cache/assets/D6C/9C0/sprockets%2Fd66bdf546164ba223e20f56b5591ddfd +0 -0
  139. data/spec/dummy/tmp/cache/assets/D6D/530/sprockets%2F8d52dee91bff01a8a2306d8a7c9152a9 +0 -0
  140. data/spec/dummy/tmp/cache/assets/D6D/DA0/sprockets%2Fac936bf40b42227a2bf9d474ae9ec149 +0 -0
  141. data/spec/dummy/tmp/cache/assets/D6F/310/sprockets%2F624b651d37f7ec0c563c446fbf8afb32 +0 -0
  142. data/spec/dummy/tmp/cache/assets/D71/A70/sprockets%2F4f10f5dd56c8a3ff78c460bbe3723a39 +0 -0
  143. data/spec/dummy/tmp/cache/assets/D72/C10/sprockets%2Ffbdb5250837c5cb856f464eb2cb3388b +0 -0
  144. data/spec/dummy/tmp/cache/assets/D73/5D0/sprockets%2F5c8608f3e25d077fa3df8cd32b50c37f +0 -0
  145. data/spec/dummy/tmp/cache/assets/D73/C00/sprockets%2F9cf4bfb486e4ab461e3f275a3d974c30 +0 -0
  146. data/spec/dummy/tmp/cache/assets/D77/B30/sprockets%2F946cf2f17c7eb41037f9ee08ad67ec40 +0 -0
  147. data/spec/dummy/tmp/cache/assets/D78/2F0/sprockets%2F3c61f8915b8f717b1de788e6ecad122c +0 -0
  148. data/spec/dummy/tmp/cache/assets/D78/870/sprockets%2F8f3a7d4fcd104fa8e47f552f6630a49e +0 -0
  149. data/spec/dummy/tmp/cache/assets/D7E/C10/sprockets%2F747c98c3cc7494a62dd882752adffb2b +0 -0
  150. data/spec/dummy/tmp/cache/assets/D7F/6C0/sprockets%2F77fe714bfff7e409a9d838cdf126700c +0 -0
  151. data/spec/dummy/tmp/cache/assets/D84/560/sprockets%2Ff09b671d3f5f8a48d7fa28e2c59ca389 +0 -0
  152. data/spec/dummy/tmp/cache/assets/D85/5D0/sprockets%2Fde362e334a475cfca1a30fa5b713b43a +0 -0
  153. data/spec/dummy/tmp/cache/assets/D8C/520/sprockets%2F221cd58a042baac534d27e4cfedc1188 +0 -0
  154. data/spec/dummy/tmp/cache/assets/D92/C00/sprockets%2F63c8bb5e2b2d9db4a2ed16f056a234c6 +0 -0
  155. data/spec/dummy/tmp/cache/assets/D97/520/sprockets%2Fea2442ae4caddb758dfb1964c601b476 +0 -0
  156. data/spec/dummy/tmp/cache/assets/D9C/510/sprockets%2Fab9bab3574dac2d1681189debb7d8255 +0 -0
  157. data/spec/dummy/tmp/cache/assets/D9D/440/sprockets%2F869f9acc13b88cf15a31d24a0ac3f6f6 +0 -0
  158. data/spec/dummy/tmp/cache/assets/D9E/CB0/sprockets%2Ff0efe0ab6bd753a8bb4481e46243d77f +0 -0
  159. data/spec/dummy/tmp/cache/assets/DA0/330/sprockets%2Fcbbb4de706387d50f48a72ee6c9c1b80 +0 -0
  160. data/spec/dummy/tmp/cache/assets/DA5/0A0/sprockets%2F7a4b5928cec69ab65afff309a04d6b47 +0 -0
  161. data/spec/dummy/tmp/cache/assets/DA6/D80/sprockets%2F8702dce2e6b9879a6add309e92ace2f0 +0 -0
  162. data/spec/dummy/tmp/cache/assets/DA8/C50/sprockets%2F0810627fddce930a399fc60d3be97fed +0 -0
  163. data/spec/dummy/tmp/cache/assets/DAA/1E0/sprockets%2F412dd3bd3026759a3f6ffe8cf9e7b93a +0 -0
  164. data/spec/dummy/tmp/cache/assets/DAA/2B0/sprockets%2Fe0c5d93fa08d139e198bfe47cd42b99a +0 -0
  165. data/spec/dummy/tmp/cache/assets/DAE/4E0/sprockets%2F88cc3ab99c608879dd56164dbcc2ccb7 +0 -0
  166. data/spec/dummy/tmp/cache/assets/DAE/6C0/sprockets%2F77c7a8676aeefa73156c55dfcf51cc46 +0 -0
  167. data/spec/dummy/tmp/cache/assets/DAF/5B0/sprockets%2F780e81d97e4eefcce73e0b82a5b1859d +0 -0
  168. data/spec/dummy/tmp/cache/assets/DB3/5D0/sprockets%2Fce1d4d75832c9bdeafd869f6f7b61725 +0 -0
  169. data/spec/dummy/tmp/cache/assets/DB5/040/sprockets%2F9a9da5df88713663b9fbc945facca891 +0 -0
  170. data/spec/dummy/tmp/cache/assets/DB5/860/sprockets%2Facf25fab3016425a0e03c9d190fd4eac +0 -0
  171. data/spec/dummy/tmp/cache/assets/DB9/220/sprockets%2Fd2dc4f59e70e73984997ffca8ad7f4a0 +0 -0
  172. data/spec/dummy/tmp/cache/assets/DC3/230/sprockets%2Fdf52e72eb73be91eccc60182191aed0b +0 -0
  173. data/spec/dummy/tmp/cache/assets/DC3/AC0/sprockets%2Fe29911eb34fdf4b710dd0d2c2cf24bc9 +0 -0
  174. data/spec/dummy/tmp/cache/assets/DC4/860/sprockets%2Fa01a3cf460ff15daae0f928d0f85f52e +0 -0
  175. data/spec/dummy/tmp/cache/assets/DC7/A10/sprockets%2F84a8af0fcbf401864e1ae5bf092cba94 +0 -0
  176. data/spec/dummy/tmp/cache/assets/DCB/620/sprockets%2F27a68cf9fe11fb1b6326d11eba7e76cb +0 -0
  177. data/spec/dummy/tmp/cache/assets/DCD/EB0/sprockets%2F4f77f509126ecbced7ea2a5ab290c8d4 +0 -0
  178. data/spec/dummy/tmp/cache/assets/DE3/6C0/sprockets%2F51c550cc1b3b021aa9aede66a5a36aff +0 -0
  179. data/spec/dummy/tmp/cache/assets/DE4/140/sprockets%2F139e4ab85d1aacb22c115fa136afdc8a +0 -0
  180. data/spec/dummy/tmp/cache/assets/DEB/110/sprockets%2F2dbdab0ce5babca645cdb5780004f875 +0 -0
  181. data/spec/dummy/tmp/cache/assets/DF1/1B0/sprockets%2F2b1bc202f9a338942edbccb2cfef0d67 +0 -0
  182. data/spec/dummy/tmp/cache/assets/DF6/0E0/sprockets%2F85b10db6e1afe643aba6d396abdd77f0 +0 -0
  183. data/spec/dummy/tmp/cache/assets/DF7/E10/sprockets%2F25e4253aba9a9adcefb72552fb1ff0c8 +0 -0
  184. data/spec/dummy/tmp/cache/assets/DF9/AD0/sprockets%2Fc700afd7cee3fe9d7ff8352b213b2c4a +0 -0
  185. data/spec/dummy/tmp/cache/assets/DFC/C20/sprockets%2Fd9178ad7e3b401c9fceafd64ea2b50d6 +0 -0
  186. data/spec/dummy/tmp/cache/assets/DFC/C30/sprockets%2Fb50a07cb30b0bd0eec8e98e5de79d65d +0 -0
  187. data/spec/dummy/tmp/cache/assets/E02/6E0/sprockets%2F63d6a5cdb8cefa64ef76b5c6e0fd3720 +0 -0
  188. data/spec/dummy/tmp/cache/assets/E08/5A0/sprockets%2Fe7148db8eea925c3c9f1ee340d53ceff +0 -0
  189. data/spec/dummy/tmp/cache/assets/E08/BB0/sprockets%2Fefac99af1af28543aef6fb607faa4973 +0 -0
  190. data/spec/dummy/tmp/cache/assets/E08/F20/sprockets%2F4fc5cdcd6974efe7adfe809b30bd6513 +0 -0
  191. data/spec/dummy/tmp/cache/assets/E16/D30/sprockets%2Fd69469e6e7439baacd8df989c0fdacc2 +0 -0
  192. data/spec/dummy/tmp/cache/assets/E17/EF0/sprockets%2Fa291ad64a26afd055dfadabbdf03f154 +0 -0
  193. data/spec/dummy/tmp/cache/assets/E41/250/sprockets%2F97cf8fe3d7ffaff076f655aefb36da03 +0 -0
  194. data/spec/dummy/tmp/cache/assets/E6E/260/sprockets%2Fd9f8ab8b91ef582cc6c99a3ba0dedfe6 +0 -0
  195. data/spec/dummy/tmp/cache/assets/F79/360/sprockets%2F0ce035fefee5ebdabc8efabfbdbd6ee4 +0 -0
  196. data/spec/javascripts/teabag/base/reporters/console_spec.coffee +69 -42
  197. data/spec/javascripts/teabag/base/reporters/html/base_view_spec.coffee +88 -0
  198. data/spec/javascripts/teabag/base/reporters/html_spec.coffee +218 -218
  199. data/spec/javascripts/teabag/base/runner_spec.coffee +22 -0
  200. data/spec/javascripts/teabag/base/teabag_spec.coffee +1 -1
  201. data/spec/javascripts/teabag/jasmine/models_jspec.coffee +101 -0
  202. data/spec/javascripts/teabag/jasmine/runner_jspec.coffee +1 -1
  203. data/spec/javascripts/teabag/mocha/models_mspec.coffee +95 -0
  204. data/spec/javascripts/teabag/mocha/reporters/console_mspec.coffee +4 -0
  205. data/spec/javascripts/teabag/mocha/runner_mspec.coffee +7 -7
  206. data/spec/javascripts/teabag/phantomjs/runner_spec.coffee +5 -5
  207. data/spec/teabag/configuration_spec.rb +2 -2
  208. data/spec/teabag/console_spec.rb +5 -17
  209. data/spec/teabag/drivers/phantomjs_driver_spec.rb +29 -0
  210. data/spec/teabag/drivers/selenium_driver_spec.rb +60 -0
  211. data/spec/teabag/formatters/{progress_formatter_spec.rb → dot_formatter_spec.rb} +14 -14
  212. data/spec/teabag/formatters/tap_y_formatter_spec.rb +190 -0
  213. data/spec/teabag/result_spec.rb +12 -42
  214. data/spec/teabag/runner_spec.rb +12 -6
  215. data/vendor/assets/javascripts/qunit-1.10.0.MIT.LICENSE +1 -0
  216. data/vendor/assets/javascripts/qunit-1.10.0.js +1977 -0
  217. metadata +161 -11
  218. data/app/assets/javascripts/teabag/base/reporters.coffee +0 -105
  219. data/spec/javascripts/teabag/base/reporters_spec.coffee +0 -267
@@ -0,0 +1,88 @@
1
+ describe "Teabag.Reporters.BaseView", ->
2
+
3
+ beforeEach ->
4
+ @base = new Teabag.Reporters.BaseView()
5
+
6
+ describe "constructor", ->
7
+
8
+ it "calls build", ->
9
+ spy = spyOn(Teabag.Reporters.BaseView.prototype, "build")
10
+ new Teabag.Reporters.BaseView()
11
+ expect(spy).toHaveBeenCalled()
12
+
13
+
14
+ describe "#build", ->
15
+
16
+ it "builds an element", ->
17
+ @base.build("foo")
18
+ expect(@base.el.className).toBe("foo")
19
+
20
+
21
+ describe "#appendTo", ->
22
+
23
+ it "calls appendChild on the passed element", ->
24
+ el = {appendChild: ->}
25
+ spy = spyOn(el, "appendChild")
26
+ @base.appendTo(el)
27
+ expect(spy).toHaveBeenCalledWith(@base.el)
28
+
29
+
30
+ describe "#append", ->
31
+
32
+ it "calls appendChild on our element", ->
33
+ @base.el = {appendChild: ->}
34
+ spy = spyOn(@base.el, "appendChild")
35
+ otherEl = {}
36
+ @base.append(otherEl)
37
+ expect(spy).toHaveBeenCalledWith(otherEl)
38
+
39
+
40
+ describe "#createEl", ->
41
+
42
+ it "creates an element with a className", ->
43
+ el = @base.createEl("em", "foo")
44
+ expect(el.tagName).toBe("EM")
45
+ expect(el.className).toBe("foo")
46
+
47
+
48
+ describe "#findEl", ->
49
+
50
+ it "finds an element and momoizes it", ->
51
+ @base.findEl("controls")
52
+ expect(@base.elements["controls"]).toBeDefined()
53
+
54
+
55
+ describe "#setText", ->
56
+
57
+ it "finds an el and sets it's innerText", ->
58
+ el = {innerHTML: "bar"}
59
+ spy = spyOn(@base, "findEl").andReturn(el)
60
+ @base.setText("foo-id", "foo")
61
+ expect(spy).toHaveBeenCalledWith("foo-id")
62
+ expect(el.innerHTML).toBe("foo")
63
+
64
+
65
+ describe "#setHtml", ->
66
+
67
+ it "finds an el and sets it's innerHTML", ->
68
+ el = {innerHTML: "bar"}
69
+ spy = spyOn(@base, "findEl").andReturn(el)
70
+ @base.setHtml("foo-id", "foo")
71
+ expect(spy).toHaveBeenCalledWith("foo-id")
72
+ expect(el.innerHTML).toBe("foo")
73
+
74
+
75
+ describe "#setClass", ->
76
+
77
+ it "finds an el and sets a class on it", ->
78
+ el = {className: "bar"}
79
+ spy = spyOn(@base, "findEl").andReturn(el)
80
+ @base.setClass("foo-id", "foo")
81
+ expect(spy).toHaveBeenCalledWith("foo-id")
82
+ expect(el.className).toBe("foo")
83
+
84
+
85
+ describe "#htmlSafe", ->
86
+
87
+ it "makes a string html safe", ->
88
+ expect(@base.htmlSafe("<div></div>")).toEqual("&lt;div&gt;&lt;/div&gt;")
@@ -34,309 +34,309 @@ describe "Teabag.Reporters.HTML", ->
34
34
  expect(@readConfigSpy).toHaveBeenCalled()
35
35
 
36
36
 
37
- describe "#build", ->
37
+ describe "#build", ->
38
38
 
39
- beforeEach ->
40
- @el = {}
41
- @buildSpy.andCallThrough()
42
- @buildLayoutSpy = spyOn(@reporter, "buildLayout")
43
- @findElSpy = spyOn(@reporter, "findEl").andReturn(@el)
44
- @setTextSpy = spyOn(@reporter, "setText")
45
- @showConfigurationSpy = spyOn(@reporter, "showConfiguration")
46
- @buildProgressSpy = spyOn(@reporter, "buildProgress")
47
- spyOn(@reporter, "envInfo").andReturn("library 1.0.0")
48
- @reporter.build()
39
+ beforeEach ->
40
+ @el = {}
41
+ @buildSpy.andCallThrough()
42
+ @buildLayoutSpy = spyOn(@reporter, "buildLayout")
43
+ @findElSpy = spyOn(@reporter, "findEl").andReturn(@el)
44
+ @setTextSpy = spyOn(@reporter, "setText")
45
+ @showConfigurationSpy = spyOn(@reporter, "showConfiguration")
46
+ @buildProgressSpy = spyOn(@reporter, "buildProgress")
47
+ spyOn(@reporter, "envInfo").andReturn("library 1.0.0")
48
+ @reporter.build()
49
49
 
50
- it "calls buildLayout", ->
51
- expect(@buildLayoutSpy).toHaveBeenCalled()
50
+ it "calls buildLayout", ->
51
+ expect(@buildLayoutSpy).toHaveBeenCalled()
52
52
 
53
- it "finds the element and assigns it", ->
54
- expect(@findElSpy).toHaveBeenCalledWith("report-all")
55
- expect(@reporter.el).toBe(@el)
53
+ it "finds the element and assigns it", ->
54
+ expect(@findElSpy).toHaveBeenCalledWith("report-all")
55
+ expect(@reporter.el).toBe(@el)
56
56
 
57
- it "sets the env-info and version", ->
58
- expect(@setTextSpy).toHaveBeenCalledWith("env-info", "library 1.0.0")
59
- expect(@setTextSpy).toHaveBeenCalledWith("version", Teabag.version)
57
+ it "sets the env-info and version", ->
58
+ expect(@setTextSpy).toHaveBeenCalledWith("env-info", "library 1.0.0")
59
+ expect(@setTextSpy).toHaveBeenCalledWith("version", Teabag.version)
60
60
 
61
- it "makes the toggles clickable", ->
62
- expect(@findElSpy).toHaveBeenCalledWith("toggles")
63
- expect(@el.onclick).toBe(@reporter.toggleConfig)
61
+ it "makes the toggles clickable", ->
62
+ expect(@findElSpy).toHaveBeenCalledWith("toggles")
63
+ expect(@el.onclick).toBe(@reporter.toggleConfig)
64
64
 
65
- it "calls showConfiguration", ->
66
- expect(@showConfigurationSpy).toHaveBeenCalled()
65
+ it "calls showConfiguration", ->
66
+ expect(@showConfigurationSpy).toHaveBeenCalled()
67
67
 
68
- it "calls buildProgress", ->
69
- expect(@buildProgressSpy).toHaveBeenCalled()
68
+ it "calls buildProgress", ->
69
+ expect(@buildProgressSpy).toHaveBeenCalled()
70
70
 
71
71
 
72
- describe "#buildLayout", ->
72
+ describe "#buildLayout", ->
73
73
 
74
- beforeEach ->
75
- @el = {}
76
- @createElSpy = spyOn(@reporter, "createEl").andReturn(@el)
77
- @appendChildSpy = spyOn(document.body, "appendChild")
78
- @reporter.buildLayout()
74
+ beforeEach ->
75
+ @el = {}
76
+ @createElSpy = spyOn(@reporter, "createEl").andReturn(@el)
77
+ @appendChildSpy = spyOn(document.body, "appendChild")
78
+ @reporter.buildLayout()
79
79
 
80
- it "creates an element and appends it to the body", ->
81
- expect(@createElSpy).toHaveBeenCalledWith("div")
82
- expect(@appendChildSpy).toHaveBeenCalledWith(@el)
83
- expect(@el.innerHTML).toContain("Teabag")
80
+ it "creates an element and appends it to the body", ->
81
+ expect(@createElSpy).toHaveBeenCalledWith("div")
82
+ expect(@appendChildSpy).toHaveBeenCalledWith(@el)
83
+ expect(@el.innerHTML).toContain("Teabag")
84
84
 
85
85
 
86
- describe "#buildProgress", ->
86
+ describe "#buildProgress", ->
87
87
 
88
- beforeEach ->
89
- @progress = {appendTo: ->}
90
- @findElSpy = spyOn(@reporter, "findEl").andReturn("_element_")
91
- @createSpy = spyOn(Teabag.Reporters.HTML.ProgressView, "create").andReturn(@progress)
92
- @appendToSpy = spyOn(@progress, "appendTo")
93
- @reporter.buildProgress()
88
+ beforeEach ->
89
+ @progress = {appendTo: ->}
90
+ @findElSpy = spyOn(@reporter, "findEl").andReturn("_element_")
91
+ @createSpy = spyOn(Teabag.Reporters.HTML.ProgressView, "create").andReturn(@progress)
92
+ @appendToSpy = spyOn(@progress, "appendTo")
93
+ @reporter.buildProgress()
94
94
 
95
- it "calls create on ProgressView", ->
96
- expect(@createSpy).toHaveBeenCalledWith(true)
95
+ it "calls create on ProgressView", ->
96
+ expect(@createSpy).toHaveBeenCalledWith(true)
97
97
 
98
- it "appends the progress element to the dom", ->
99
- expect(@appendToSpy).toHaveBeenCalledWith("_element_")
98
+ it "appends the progress element to the dom", ->
99
+ expect(@appendToSpy).toHaveBeenCalledWith("_element_")
100
100
 
101
101
 
102
- describe "#reportRunnerStarting", ->
102
+ describe "#reportRunnerStarting", ->
103
103
 
104
- beforeEach ->
105
- @setTextSpy = spyOn(@reporter, "setText")
106
- @reporter.reportRunnerStarting(total: 42)
104
+ beforeEach ->
105
+ @setTextSpy = spyOn(@reporter, "setText")
106
+ @reporter.reportRunnerStarting(total: 42)
107
107
 
108
- it "gets the totals", ->
109
- expect(@reporter.total.exist).toBe(42)
108
+ it "gets the totals", ->
109
+ expect(@reporter.total.exist).toBe(42)
110
110
 
111
- it "sets the duration text", ->
112
- expect(@setTextSpy).toHaveBeenCalledWith("stats-duration", "...")
111
+ it "sets the duration text", ->
112
+ expect(@setTextSpy).toHaveBeenCalledWith("stats-duration", "...")
113
113
 
114
114
 
115
- describe "#reportSpecStarting", ->
115
+ describe "#reportSpecStarting", ->
116
116
 
117
- it "creates a SpecView", ->
118
- @reporter.config["build-full-report"] = true
119
- spy = spyOn(Teabag.Reporters.HTML, "SpecView")
120
- @reporter.reportSpecStarting(@jasmineSpec)
121
- expect(spy).toHaveBeenCalled()
117
+ it "creates a SpecView", ->
118
+ @reporter.config["build-full-report"] = true
119
+ spy = spyOn(Teabag.Reporters.HTML, "SpecView")
120
+ @reporter.reportSpecStarting(@jasmineSpec)
121
+ expect(spy).toHaveBeenCalled()
122
122
 
123
- it "doesn't create the SpecView if we're not building the full report", ->
124
- @reporter.config["build-full-report"] = false
125
- spy = spyOn(Teabag.Reporters.HTML, "SpecView")
126
- @reporter.reportSpecStarting(@jasmineSpec)
127
- expect(spy).wasNotCalled()
123
+ it "doesn't create the SpecView if we're not building the full report", ->
124
+ @reporter.config["build-full-report"] = false
125
+ spy = spyOn(Teabag.Reporters.HTML, "SpecView")
126
+ @reporter.reportSpecStarting(@jasmineSpec)
127
+ expect(spy).wasNotCalled()
128
128
 
129
- it "tracks the start time of the spec", ->
130
- @reporter.specStart = undefined
131
- @reporter.reportSpecStarting(@jasmineSpec)
132
- expect(@reporter.specStart).toBeDefined()
129
+ it "tracks the start time of the spec", ->
130
+ @reporter.specStart = undefined
131
+ @reporter.reportSpecStarting(@jasmineSpec)
132
+ expect(@reporter.specStart).toBeDefined()
133
133
 
134
134
 
135
- describe "#reportSpecResults", ->
135
+ describe "#reportSpecResults", ->
136
136
 
137
- beforeEach ->
138
- @updateProgressSpy = spyOn(@reporter, "updateProgress")
139
- @updateStatusSpy = spyOn(@reporter, "updateStatus")
137
+ beforeEach ->
138
+ @updateProgressSpy = spyOn(@reporter, "updateProgress")
139
+ @updateStatusSpy = spyOn(@reporter, "updateStatus")
140
140
 
141
- it "increases the total run count", ->
142
- @reporter.total.run = 41
143
- @reporter.reportSpecResults(@jasmineSpec)
144
- expect(@reporter.total.run).toBe(42)
141
+ it "increases the total run count", ->
142
+ @reporter.total.run = 41
143
+ @reporter.reportSpecResults(@jasmineSpec)
144
+ expect(@reporter.total.run).toBe(42)
145
145
 
146
- it "calls updateProgress", ->
147
- @reporter.reportSpecResults(@jasmineSpec)
148
- expect(@updateProgressSpy).toHaveBeenCalled()
146
+ it "calls updateProgress", ->
147
+ @reporter.reportSpecResults(@jasmineSpec)
148
+ expect(@updateProgressSpy).toHaveBeenCalled()
149
149
 
150
- it "calls updateStatus", ->
151
- @reporter.reportSpecResults(@jasmineSpec)
152
- expect(@updateStatusSpy).toHaveBeenCalledWith(@jasmineSpec)
150
+ it "calls updateStatus", ->
151
+ @reporter.reportSpecResults(@jasmineSpec)
152
+ expect(@updateStatusSpy).toHaveBeenCalledWith(@jasmineSpec)
153
153
 
154
154
 
155
- describe "#reportRunnerResults", ->
155
+ describe "#reportRunnerResults", ->
156
156
 
157
- beforeEach ->
158
- @setTextSpy = spyOn(@reporter, "setText")
159
- @setStatusSpy = spyOn(@reporter, "setStatus")
160
- @updateProgressSpy = spyOn(@reporter, "updateProgress")
161
- @elapsedTimeSpy = spyOn(@reporter, "elapsedTime").andReturn("1.000s")
162
- @reporter.total = {run: 666, exist: 42, failures: 5, passes: 10, skipped: 15}
157
+ beforeEach ->
158
+ @setTextSpy = spyOn(@reporter, "setText")
159
+ @setStatusSpy = spyOn(@reporter, "setStatus")
160
+ @updateProgressSpy = spyOn(@reporter, "updateProgress")
161
+ @elapsedTimeSpy = spyOn(@reporter, "elapsedTime").andReturn("1.000s")
162
+ @reporter.total = {run: 666, exist: 42, failures: 5, passes: 10, skipped: 15}
163
163
 
164
- it "does nothing if there were no tests run", ->
165
- @reporter.total.run = 0
166
- @reporter.reportRunnerResults()
167
- expect(@setTextSpy).wasNotCalled()
164
+ it "does nothing if there were no tests run", ->
165
+ @reporter.total.run = 0
166
+ @reporter.reportRunnerResults()
167
+ expect(@setTextSpy).wasNotCalled()
168
168
 
169
- it "sets the duration text", ->
170
- @reporter.total = {run: 666, exist: 42}
171
- @reporter.reportRunnerResults()
172
- expect(@setTextSpy).toHaveBeenCalledWith("stats-duration", "1.000s")
169
+ it "sets the duration text", ->
170
+ @reporter.total = {run: 666, exist: 42}
171
+ @reporter.reportRunnerResults()
172
+ expect(@setTextSpy).toHaveBeenCalledWith("stats-duration", "1.000s")
173
173
 
174
- it "sets the status to passed if there are no failures", ->
175
- @reporter.total.failures = 0
176
- @reporter.reportRunnerResults()
177
- expect(@setStatusSpy).toHaveBeenCalledWith("passed")
174
+ it "sets the status to passed if there are no failures", ->
175
+ @reporter.total.failures = 0
176
+ @reporter.reportRunnerResults()
177
+ expect(@setStatusSpy).toHaveBeenCalledWith("passed")
178
178
 
179
- it "displays the total passes", ->
180
- @reporter.reportRunnerResults()
181
- expect(@setTextSpy).toHaveBeenCalledWith("stats-passes", 10)
179
+ it "displays the total passes", ->
180
+ @reporter.reportRunnerResults()
181
+ expect(@setTextSpy).toHaveBeenCalledWith("stats-passes", 10)
182
182
 
183
- it "displays the total failures", ->
184
- @reporter.reportRunnerResults()
185
- expect(@setTextSpy).toHaveBeenCalledWith("stats-failures", 5)
183
+ it "displays the total failures", ->
184
+ @reporter.reportRunnerResults()
185
+ expect(@setTextSpy).toHaveBeenCalledWith("stats-failures", 5)
186
186
 
187
- it "displays the total skipped", ->
188
- @reporter.reportRunnerResults()
189
- expect(@setTextSpy).toHaveBeenCalledWith("stats-skipped", 15)
187
+ it "displays the total skipped", ->
188
+ @reporter.reportRunnerResults()
189
+ expect(@setTextSpy).toHaveBeenCalledWith("stats-skipped", 15)
190
190
 
191
- it "calls updateProgress", ->
192
- @reporter.reportRunnerResults()
193
- expect(@updateProgressSpy).toHaveBeenCalled()
191
+ it "calls updateProgress", ->
192
+ @reporter.reportRunnerResults()
193
+ expect(@updateProgressSpy).toHaveBeenCalled()
194
194
 
195
195
 
196
- describe "#updateStat", ->
196
+ describe "#updateStat", ->
197
197
 
198
- beforeEach ->
199
- @setTextSpy = spyOn(@reporter, "setText")
198
+ beforeEach ->
199
+ @setTextSpy = spyOn(@reporter, "setText")
200
200
 
201
- it "does nothing if we're not displaying progress", ->
202
- @reporter.config["display-progress"] = false
203
- @reporter.updateStat("name", 42)
204
- expect(@setTextSpy).wasNotCalled()
201
+ it "does nothing if we're not displaying progress", ->
202
+ @reporter.config["display-progress"] = false
203
+ @reporter.updateStat("name", 42)
204
+ expect(@setTextSpy).wasNotCalled()
205
205
 
206
206
 
207
- it "sets the text of the stat we want to set", ->
208
- @reporter.updateStat("name", 42)
209
- expect(@setTextSpy).toHaveBeenCalledWith("stats-name", 42)
207
+ it "sets the text of the stat we want to set", ->
208
+ @reporter.updateStat("name", 42)
209
+ expect(@setTextSpy).toHaveBeenCalledWith("stats-name", 42)
210
210
 
211
211
 
212
- describe "#updateStatus", ->
212
+ describe "#updateStatus", ->
213
213
 
214
- beforeEach ->
215
- @updateStatSpy = spyOn(@reporter, "updateStat")
216
- @setStatusSpy = spyOn(@reporter, "setStatus")
217
- @findElSpy = spyOn(@reporter, "findEl").andReturn(appendChild: ->)
214
+ beforeEach ->
215
+ @updateStatSpy = spyOn(@reporter, "updateStat")
216
+ @setStatusSpy = spyOn(@reporter, "setStatus")
217
+ @findElSpy = spyOn(@reporter, "findEl").andReturn(appendChild: ->)
218
218
 
219
- describe "skipped", ->
219
+ describe "skipped", ->
220
220
 
221
- it "updates the statistic", ->
222
- @jasmineSpecResults.skipped = true
223
- @reporter.updateStatus(@jasmineSpec)
224
- expect(@updateStatSpy).toHaveBeenCalledWith("skipped", 1)
221
+ it "updates the statistic", ->
222
+ @jasmineSpecResults.skipped = true
223
+ @reporter.updateStatus(@jasmineSpec)
224
+ expect(@updateStatSpy).toHaveBeenCalledWith("skipped", 1)
225
225
 
226
- describe "pass", ->
226
+ describe "pass", ->
227
227
 
228
- it "updates the statistic", ->
229
- @reporter.updateStatus(@jasmineSpec)
230
- expect(@updateStatSpy).toHaveBeenCalledWith("passes", 1)
228
+ it "updates the statistic", ->
229
+ @reporter.updateStatus(@jasmineSpec)
230
+ expect(@updateStatSpy).toHaveBeenCalledWith("passes", 1)
231
231
 
232
- it "calls updateState on the view", ->
233
- @reporter.reportView = updateState: ->
234
- spy = spyOn(@reporter.reportView, "updateState")
235
- @reporter.updateStatus(@jasmineSpec)
236
- expect(spy.argsForCall[0][0]).toBe("passed")
232
+ it "calls updateState on the view", ->
233
+ @reporter.reportView = updateState: ->
234
+ spy = spyOn(@reporter.reportView, "updateState")
235
+ @reporter.updateStatus(@jasmineSpec)
236
+ expect(spy.argsForCall[0][0]).toBe("passed")
237
237
 
238
- describe "failure", ->
238
+ describe "failure", ->
239
239
 
240
- beforeEach ->
241
- @jasmineSpecResults.passed = -> false
240
+ beforeEach ->
241
+ @jasmineSpecResults.passed = -> false
242
242
 
243
- it "updates the statistic", ->
244
- @reporter.updateStatus(@jasmineSpec)
245
- expect(@updateStatSpy).toHaveBeenCalledWith("failures", 1)
243
+ it "updates the statistic", ->
244
+ @reporter.updateStatus(@jasmineSpec)
245
+ expect(@updateStatSpy).toHaveBeenCalledWith("failures", 1)
246
246
 
247
- it "calls updateState on the view", ->
248
- @reporter.reportView = updateState: ->
249
- spy = spyOn(@reporter.reportView, "updateState")
250
- @reporter.updateStatus(@jasmineSpec)
251
- expect(spy.argsForCall[0][0]).toBe("failed")
247
+ it "calls updateState on the view", ->
248
+ @reporter.reportView = updateState: ->
249
+ spy = spyOn(@reporter.reportView, "updateState")
250
+ @reporter.updateStatus(@jasmineSpec)
251
+ expect(spy.argsForCall[0][0]).toBe("failed")
252
252
 
253
- it "creates a FailureView and appends it to the dom", ->
254
- spy = spyOn(Teabag.Reporters.HTML, "FailureView").andReturn(appendTo: ->)
255
- @reporter.updateStatus(@jasmineSpec)
256
- expect(spy).toHaveBeenCalled()
253
+ it "creates a FailureView and appends it to the dom", ->
254
+ spy = spyOn(Teabag.Reporters.HTML, "FailureView").andReturn(appendTo: ->)
255
+ @reporter.updateStatus(@jasmineSpec)
256
+ expect(spy).toHaveBeenCalled()
257
257
 
258
- it "doesn't create a FailureView if we're building the full report", ->
259
- @reporter.config["build-full-report"] = true
260
- spy = spyOn(Teabag.Reporters.HTML, "FailureView").andReturn(appendTo: ->)
261
- @reporter.updateStatus(@jasmineSpec)
262
- expect(spy).wasNotCalled()
258
+ it "doesn't create a FailureView if we're building the full report", ->
259
+ @reporter.config["build-full-report"] = true
260
+ spy = spyOn(Teabag.Reporters.HTML, "FailureView").andReturn(appendTo: ->)
261
+ @reporter.updateStatus(@jasmineSpec)
262
+ expect(spy).wasNotCalled()
263
263
 
264
- it "sets the status", ->
265
- @reporter.updateStatus(@jasmineSpec)
266
- expect(@setStatusSpy).toHaveBeenCalledWith("failed")
264
+ it "sets the status", ->
265
+ @reporter.updateStatus(@jasmineSpec)
266
+ expect(@setStatusSpy).toHaveBeenCalledWith("failed")
267
267
 
268
268
 
269
- describe "#updateProgress", ->
269
+ describe "#updateProgress", ->
270
270
 
271
- beforeEach ->
272
- @progress = {update: ->}
273
- @updateSpy = spyOn(@progress, "update")
274
- @reporter.progress = @progress
275
- @reporter.total = {exist: 666, run: 42}
276
- @reporter.updateProgress()
271
+ beforeEach ->
272
+ @progress = {update: ->}
273
+ @updateSpy = spyOn(@progress, "update")
274
+ @reporter.progress = @progress
275
+ @reporter.total = {exist: 666, run: 42}
276
+ @reporter.updateProgress()
277
277
 
278
- it "calls update on the progress view", ->
279
- expect(@updateSpy).toHaveBeenCalledWith(666, 42)
278
+ it "calls update on the progress view", ->
279
+ expect(@updateSpy).toHaveBeenCalledWith(666, 42)
280
280
 
281
281
 
282
- describe "#showConfiguration", ->
282
+ describe "#showConfiguration", ->
283
283
 
284
- beforeEach ->
285
- @setClassSpy = spyOn(@reporter, "setClass")
284
+ beforeEach ->
285
+ @setClassSpy = spyOn(@reporter, "setClass")
286
286
 
287
- it "sets the class to active on the toggle buttons for each configuration", ->
288
- @reporter.showConfiguration()
289
- expect(@setClassSpy).toHaveBeenCalledWith("use-catch", "active")
290
- expect(@setClassSpy).toHaveBeenCalledWith("build-full-report", "")
291
- expect(@setClassSpy).toHaveBeenCalledWith("display-progress", "active")
287
+ it "sets the class to active on the toggle buttons for each configuration", ->
288
+ @reporter.showConfiguration()
289
+ expect(@setClassSpy).toHaveBeenCalledWith("use-catch", "active")
290
+ expect(@setClassSpy).toHaveBeenCalledWith("build-full-report", "")
291
+ expect(@setClassSpy).toHaveBeenCalledWith("display-progress", "active")
292
292
 
293
293
 
294
- describe "#setStatus", ->
294
+ describe "#setStatus", ->
295
295
 
296
- it "sets the body class to the status passed in", ->
297
- current = document.body.className
298
- @reporter.setStatus("foo")
299
- expect(document.body.className).toBe("teabag-foo")
300
- document.body.className = current
296
+ it "sets the body class to the status passed in", ->
297
+ current = document.body.className
298
+ @reporter.setStatus("foo")
299
+ expect(document.body.className).toBe("teabag-foo")
300
+ document.body.className = current
301
301
 
302
302
 
303
- describe "#setFilter", ->
303
+ describe "#setFilter", ->
304
304
 
305
- beforeEach ->
306
- @setClassSpy = spyOn(@reporter, "setClass")
307
- @setHtmlSpy = spyOn(@reporter, "setHtml")
308
- @reporter.setFilter("_filter_")
305
+ beforeEach ->
306
+ @setClassSpy = spyOn(@reporter, "setClass")
307
+ @setHtmlSpy = spyOn(@reporter, "setHtml")
308
+ @reporter.setFilter("_filter_")
309
309
 
310
- it "sets a class and the html for the filter display", ->
311
- expect(@setClassSpy).toHaveBeenCalledWith("filtered", "teabag-filtered")
312
- expect(@setHtmlSpy).toHaveBeenCalledWith("filtered", "_filter_", true)
310
+ it "sets a class and the html for the filter display", ->
311
+ expect(@setClassSpy).toHaveBeenCalledWith("filtered", "teabag-filtered")
312
+ expect(@setHtmlSpy).toHaveBeenCalledWith("filtered", "_filter_", true)
313
313
 
314
314
 
315
- describe "#readConfig", ->
315
+ describe "#readConfig", ->
316
316
 
317
- beforeEach ->
318
- @readConfigSpy.andCallThrough()
319
- @config = {}
320
- @cookieSpy = spyOn(@reporter, "cookie").andReturn(@config)
321
- @reporter.readConfig()
317
+ beforeEach ->
318
+ @readConfigSpy.andCallThrough()
319
+ @config = {}
320
+ @cookieSpy = spyOn(@reporter, "cookie").andReturn(@config)
321
+ @reporter.readConfig()
322
322
 
323
- it "reads the configuration from the cookie", ->
324
- expect(@cookieSpy).toHaveBeenCalledWith("teabag")
325
- expect(@reporter.config).toEqual(@config)
323
+ it "reads the configuration from the cookie", ->
324
+ expect(@cookieSpy).toHaveBeenCalledWith("teabag")
325
+ expect(@reporter.config).toEqual(@config)
326
326
 
327
327
 
328
- describe "#toggleConfig", ->
328
+ describe "#toggleConfig", ->
329
329
 
330
- beforeEach ->
331
- @refreshSpy = spyOn(@reporter, "refresh")
332
- @cookieSpy = spyOn(@reporter, "cookie")
333
- @reporter.toggleConfig(target: {tagName: "button", getAttribute: -> "teabag-use-catch"})
330
+ beforeEach ->
331
+ @refreshSpy = spyOn(@reporter, "refresh")
332
+ @cookieSpy = spyOn(@reporter, "cookie")
333
+ @reporter.toggleConfig(target: {tagName: "button", getAttribute: -> "teabag-use-catch"})
334
334
 
335
- it "toggles the configuration", ->
336
- expect(@reporter.config["use-catch"]).toBe(false)
335
+ it "toggles the configuration", ->
336
+ expect(@reporter.config["use-catch"]).toBe(false)
337
337
 
338
- it "sets the cookie", ->
339
- expect(@cookieSpy).toHaveBeenCalledWith("teabag", @reporter.config)
338
+ it "sets the cookie", ->
339
+ expect(@cookieSpy).toHaveBeenCalledWith("teabag", @reporter.config)
340
340
 
341
- it "refreshes the page", ->
342
- expect(@refreshSpy).toHaveBeenCalled()
341
+ it "refreshes the page", ->
342
+ expect(@refreshSpy).toHaveBeenCalled()