test_squad 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +21 -19
- data/Rakefile +4 -13
- data/app/assets/javascripts/jasmine/boot.js +6 -6
- data/app/assets/javascripts/test_squad/jasmine-phantom.js +10 -10
- data/app/assets/javascripts/test_squad/mocha-reporter.js +24 -24
- data/app/assets/javascripts/test_squad/qunit-phantom.js +9 -9
- data/lib/generators/test_squad/install/install_generator.rb +2 -0
- data/lib/generators/test_squad/install/templates/ember/router_test.js +4 -4
- data/lib/generators/test_squad/install/templates/jasmine/answer_spec.js +2 -2
- data/lib/generators/test_squad/install/templates/mocha/answer_spec.js +2 -2
- data/lib/generators/test_squad/install/templates/qunit/answer_test.js +2 -2
- data/lib/test_squad/engine.rb +1 -1
- data/lib/test_squad/version.rb +1 -1
- data/test/dummy/log/test.log +252 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/--/--Jr18gSi0dWQfX8IpGoxIeyt0ar6Z4qNtYBzt5o_U0.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/-A/-AFjki5uiixoc7nHNjiCuNvfJJb975YnV9UAcS6szAE.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/15/15vEz7HBqhg9JjDp9KyF_iFJ9DOccQCaj2XecY7ENdw.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/1b/1bShYtup0I7zDOa8whDdypfQEZxH4rVEVKmz8aeDuS0.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/1f/1fidLos4TsMC1Jzat66F4EuJMnvA4Ek4Yq3Wx_diqLA.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/1p/1p035rqBDJG2S9jFXm8UVt4XiETe3l4TsAshRjkfgJU.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/2M/2MBtBr7wa8xseirr4gzUSkYcBmJJyn-tu_oQlYy8ID4.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/2v/2vpUSDWJFGeuIjHz40opYeb7FYq-8c-qE6zDo4IHg7w.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/48/48aEVfcYY6MwkyeeyUtk-udKX4sVI6wCzCoGdcrXoHE.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/5B/5BbgAT98H6HVF2DtEaZeL3jSwsvFzHkl6-vwuQ1UoGQ.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/5L/5Lly_CA8DZvPhQV2jDQx-Y6P_y3Ygra9t5jfSlGhHDA.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/5r/5rVFWHwnC5p0Ip-bfR4kYUgExX381aAWJgDwMikjDso.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/6Y/6Y-2fFELXy514cZ-fXlvcoKlvvCMCHgIZ_Q06PZoMsg.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/7y/7yaZL2RIxe_zCwIWBeGtIKMbQQcvZU1Rvt1sfZGpAcY.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/8b/8bO6Jw1Up52x4anEYjjokCbnBXCdxUeWEmRLqnqNCNM.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/BT/BT2K9suBmG7JzM_3FoJ5mpH8wti3_Phlsl7X-8nut_A.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/CI/CI3wmSM2mvTHVtxrm8aAXPicSU_UPT54tEsOxoL8674.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/DI/DIQq7U9opLPIIfNvo9AVnvNck1WI6s4dJx7NgTjz-YY.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Dj/Dj11DIpk6AMooko4HIrIRLle_Pku6Z3wm6JGkv6tQhY.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Dl/Dld2HJ_h197OmHkWuEk-msUaZ5dF27-KHGDNE37nJ94.cache +4 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Dn/DnkprrM0pXn0tWZjZQUbxw9czuz9Eqc3qXokFvQPADk.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Ev/EvacufxhwsfPRuHbaKUtaE49aNAI6zySGzBX6QZ46fU.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/FX/FXjOrhU0u21QlvjYFb8z9MZGZc39etPqywbESQ0wYWI.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/GY/GYHFycC3lFC4awe2HKZR7T85-btYZfMW4Gn91uE2igk.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Hp/Hpu36mMh4k13tRV-s4EXzKb-AKPQlbYbs_FSkwPY00Y.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Io/IonH0xlcUSwdGkYep13HO0inPWlIKRSUwXdCsaGQoqY.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/J6/J6BezjYQwGJpQwqW7fTv5FOMg9Gche5xnb6605W5M-w.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/JY/JYVlS7Bj8Nfu1ybn-WGPSjyHKo8j0lH1EmaY2c3e708.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Jl/JlEfkGFQp4-hMkyCydaWpBH-k7TRHDnWVO4UICTABdE.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/M2/M2Ol--6549LpFDdxaF_pMAXgHlh3ChBG1SqMXKGVDZM.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/NB/NBnLLGZS0L0-K0XDp8wPfKEbULh0IdSnEnq5My6uLsg.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/NO/NOfDGz3eb64QkGxYDlk3UiXJ5ZbVkZ4oEzOH0vJHfhE.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/NY/NYqEn9nriI_u_tmIhqigPcBG-xaL_4DNAXcZZedduxo.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/OI/OI6uxGcnsKavdWTtwDAasU3wPx8QXhzBgV0X2n1KjMQ.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/OO/OOE0vr9ZxtP3cSlMNmlKreGc5OdJjjZeAulus5KkgWg.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Py/PyK_nEiBa9hBjMk7txFknifTzI7W6zyQ1fUUyDjilfg.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/Rv/RvM3rfUtVVuJB7c23xo1aYX6t09hPFsVb-M1BFS2RRU.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/UW/UWG7vqp9QHDXQ8K7rWHxSLtTJjgpwAXa0VQeMC79S9c.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/V0/V04j3gLzI35tOG8HB1FQnZC0FkgXNiVo6CFAKe-vm08.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/VA/VAWVCETKxJu27HgLdoNFjFk7ALjLDk0DvMbBEkuemB8.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/W0/W0gNip0-q2OR05Bt6AdVA0Wwo68JvnXldo6C331SFdQ.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/W7/W7080xf9OvI-WlTJibOoNQX9L03yaM4Uu9cebEMFPVU.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/XZ/XZHJ4q_Vqm8z67XoLCSR9Bf3bxRrNVgxY-Zn2Dl1_oc.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/ba/bakkhKWQav5zpy-VjOssp_XTDY4mccVjeCQjmTWcvEQ.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/bq/bqgbepkpHrkLsvcws1h6NEku20i6s1HNfRwUf3ds_bM.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/cV/cVqlc9rQleC6JnBL8gr6GpxOCKK7SpSq-IxZ7rJse4A.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/eB/eBHGAOFSIHdU3R6gC__U1b2OtNaMsdZ8M6kKd6rX3uA.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/fO/fOMwhE_LoK6PBz43rr86imRHqStpfn-j0zKwNCEFA7A.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/fk/fk0Xn9aqGZauDCUL4PDM1A0riiRU3nTGEF8T0tfVi9Q.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/g6/g6PEU0mrTD1F_JY1UnmLjn6OD29tp6XAa7CRxtbnssU.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/hc/hcew6fQjAsKz8Yj7LY1NCH_bkrYNyz9ay_m2maJhhhc.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/k9/k9vjsOgT-S2u8LSPksFS2VZO5JJYQB1kOSOfkmBmncA.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/kB/kB1DR3T5YiVkiJ5JQAjwNFNLjKoCrBWbjHzmUWQxwuE.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/l-/l-Fy5bdFTh-kc8fFcJaPEiIprPT_Zro3btmmfaOSFGk.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/lQ/lQ7kfIJefOVM6yNLzHjXN1_HIVJA8cActbFe78oEgDc.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/lk/lk8cNS9qlZOFztN2ZtkUuLMG5il9UFV_6L9mzl0gJgs.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/mw/mwqO_5fkZLqyQ6yJZPYvfEasJmaJTDBUxg0WMRs1qb8.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/nA/nAZFuRUynizl4MlTEzus7mnivEF6hVau1PVNPOhqXYk.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/ng/ngpqSYzkq7JDBSdc4flCcVCDYZxdQF1cwbcpkKDSOPw.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/nv/nv2dwJTpEmjPq5nrQ5gYwOUkAdhKxPmwxfhzuIGq9tc.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/oU/oUwQkGq4wTmHNMCfmuRwu7YP63N84Zf4HWHM20RT4jk.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/o_/o_4WHxITiPaOrX75j567d0VpQJ3ibKEfwp5kLyz0g6I.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/pf/pfueHOXdqh2SVlAKfvEFrdhOpobUofsH-rxLMv9HeAo.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/qG/qGl34xE7nyT_5bv_0LdftjhOhWqeaUsSD8RRR5e2LhE.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/qP/qPgHkOGEWFNXkjTAzsDVGYeZyMYAogAGrsFU8E9Khh0.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/r1/r16KTswcSzCfPAeYpPsI3pB60v7bXkXdzIC9F0depbo.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/s1/s1qM0DtayvbvOieVFIeEejbL_uzBbLhdJt4J-eDdfVs.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/sK/sKmQ0vmdki8bEnqnNv5R6SxInKZ3wr6OYKZso5pK3A8.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/t3/t3Llqx0uA6Qvi3W3tzxEvd6vCx1bNDEaOx3cv3jk7F8.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/tT/tTT_rRtFLpee6FOwJBDH0h8tFNayUZozM9CRDjxh_0M.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/tq/tqhspSUI_G73syyHkucLwf2AlmAmzqfQIT9OiPnb-3E.cache +2 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/uE/uEbg-8OHCY_n1CRoUJ1NxO7ZA25rem-WvK_BMk9nzmA.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/ua/uaYS0pFffy2dw-_kAZeb0CMxG34XxRbxkqOKjwAJZNY.cache +3 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/uh/uhmMX7shFPI0NOePr7b3mCW2lOWT4osZ3sovJVlPyek.cache +1 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/wt/wtYo8a6w1ZB86-t1egtbf8IK4RutFPzvoEdAbWiBw7s.cache +0 -0
- data/test/dummy/tmp/cache/assets/sprockets/v3.0/y1/y1-icrLhuhHxxsTl1oMCwvaQljaPTUg8pGKp4ktBmHk.cache +0 -0
- data/test/dummy/tmp/generators/Gemfile +1 -5
- data/test/dummy/tmp/generators/test/javascript/dummy/answer_test.js +6 -0
- data/test/dummy/tmp/generators/test/javascript/test_helper.js +3 -0
- data/test/dummy/tmp/generators/test/javascript/test_squad.rb +1 -1
- metadata +158 -6
- data/test/dummy/tmp/generators/test/javascript/dummy/answer_spec.js +0 -6
- data/test/dummy/tmp/generators/test/javascript/spec_helper.js +0 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7c19177126b28eaa65b14395b295ffae23f491a5
|
4
|
+
data.tar.gz: f9eb4ba291ae471d67a59a73793756f8701fef3c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ab7f5d2d616c3704295d2956c932cd3e90d616091ef573be17d207c201d089d77706f4614e08a183a2f479c3058802e9ef6b8cac35a7b60a11731cbab847fb77
|
7
|
+
data.tar.gz: 4fff993c31688c4098f2d260835fceb45f91522f0d7bc4eea019ae10ad9debf9f8c06f23e1d52f8a430ba8be7a26b0ffd71debaf651ab3c2eb329ab86bb4f72d
|
data/README.md
CHANGED
@@ -18,7 +18,7 @@ Add these lines to your application's `Gemfile`:
|
|
18
18
|
|
19
19
|
```ruby
|
20
20
|
group :development, :test do
|
21
|
-
gem
|
21
|
+
gem "test_squad"
|
22
22
|
end
|
23
23
|
```
|
24
24
|
|
@@ -42,6 +42,8 @@ $ rails generate test_squad:install --framework jasmine
|
|
42
42
|
create test/javascript/test_squad.rb
|
43
43
|
```
|
44
44
|
|
45
|
+
If you're already using <https://rails-assets.org>, you can skip the Gemfile entry with `--skip-source`.
|
46
|
+
|
45
47
|
## Running tests
|
46
48
|
|
47
49
|
You can run your tests with `rake test_squad`. You can also visit `http://localhost:3000/tests` for in-browser testing.
|
@@ -73,7 +75,7 @@ When using the Ember framework, you must configure your application name. It'll
|
|
73
75
|
App = SquadSample;
|
74
76
|
|
75
77
|
// Set up Ember testing.
|
76
|
-
App.rootElement =
|
78
|
+
App.rootElement = "#ember-testing";
|
77
79
|
App.setupForTesting();
|
78
80
|
App.injectTestHelpers();
|
79
81
|
```
|
@@ -105,20 +107,20 @@ By default, Mocha is configured with [expect.js](https://github.com/Automattic/e
|
|
105
107
|
Just add the dependency to your `Gemfile`. Use `rails-assets-chai` or `rails-assets-should`:
|
106
108
|
|
107
109
|
```ruby
|
108
|
-
source
|
109
|
-
source
|
110
|
+
source "https://rubygems.org"
|
111
|
+
source "https://rails-assets.org"
|
110
112
|
|
111
|
-
gem
|
112
|
-
gem
|
113
|
-
gem
|
113
|
+
gem "rails", "4.2.0"
|
114
|
+
gem "sass-rails", "~> 5.0"
|
115
|
+
gem "uglifier", ">= 1.3.0"
|
114
116
|
|
115
|
-
gem
|
116
|
-
gem
|
117
|
+
gem "ember-rails"
|
118
|
+
gem "rails-assets-jquery"
|
117
119
|
|
118
120
|
group :development, :test do
|
119
|
-
gem
|
120
|
-
gem
|
121
|
-
gem
|
121
|
+
gem "test_squad", path: "../../test_squad"
|
122
|
+
gem "rails-assets-mocha"
|
123
|
+
gem "rails-assets-chai"
|
122
124
|
end
|
123
125
|
```
|
124
126
|
|
@@ -132,9 +134,9 @@ Install the dependency with `bundle install`. Then require the library on `{test
|
|
132
134
|
|
133
135
|
var assert = chai.assert;
|
134
136
|
|
135
|
-
mocha.setup(
|
137
|
+
mocha.setup("bdd");
|
136
138
|
mocha.checkLeaks();
|
137
|
-
mocha.globals([
|
139
|
+
mocha.globals(["jQuery"]);
|
138
140
|
mocha.reporter(mocha.TestSquad);
|
139
141
|
window.onload = function(){
|
140
142
|
mocha.run();
|
@@ -146,7 +148,7 @@ window.onload = function(){
|
|
146
148
|
If you have a catch-all route, add the following line to your `config/routes.rb` file. This will be required if you configure Ember.js to use `history.pushState`.
|
147
149
|
|
148
150
|
```ruby
|
149
|
-
get :tests, to:
|
151
|
+
get :tests, to: "test_squad#tests" unless Rails.env.production?
|
150
152
|
```
|
151
153
|
|
152
154
|
Otherwise you won't be able to to run your in-browser tests.
|
@@ -165,12 +167,12 @@ You can configure these options using the `{test,spec}/javascript/test_squad.rb`
|
|
165
167
|
|
166
168
|
```ruby
|
167
169
|
TestSquad.configure do |config|
|
168
|
-
config.framework =
|
169
|
-
config.server_host =
|
170
|
+
config.framework = "qunit"
|
171
|
+
config.server_host = "127.0.0.1"
|
170
172
|
config.server_port = 50000
|
171
|
-
config.server_path =
|
173
|
+
config.server_path = "/tests"
|
172
174
|
config.timeout = 10
|
173
|
-
config.phantomjs_bin =
|
175
|
+
config.phantomjs_bin = "phantomjs"
|
174
176
|
end
|
175
177
|
```
|
176
178
|
|
data/Rakefile
CHANGED
@@ -1,18 +1,9 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
rescue LoadError
|
4
|
-
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
5
|
-
end
|
6
|
-
|
7
|
-
Bundler::GemHelper.install_tasks
|
8
|
-
|
9
|
-
require 'rake/testtask'
|
1
|
+
require "bundler/gem_tasks"
|
2
|
+
require "rake/testtask"
|
10
3
|
|
11
4
|
Rake::TestTask.new(:test) do |t|
|
12
|
-
t.libs <<
|
13
|
-
t.
|
14
|
-
t.pattern = 'test/**/*_test.rb'
|
15
|
-
t.verbose = false
|
5
|
+
t.libs << "test"
|
6
|
+
t.test_files = FileList["test/**/*_test.rb"]
|
16
7
|
t.warning = false
|
17
8
|
end
|
18
9
|
|
@@ -5,7 +5,7 @@
|
|
5
5
|
var env = jasmine.getEnv();
|
6
6
|
var jasmineInterface = jasmineRequire.interface(jasmine, env);
|
7
7
|
|
8
|
-
if (typeof window ==
|
8
|
+
if (typeof window == "undefined" && typeof exports == "object") {
|
9
9
|
extend(exports, jasmineInterface);
|
10
10
|
} else {
|
11
11
|
extend(window, jasmineInterface);
|
@@ -15,12 +15,12 @@
|
|
15
15
|
getWindowLocation: function() { return window.location; }
|
16
16
|
});
|
17
17
|
|
18
|
-
var catchingExceptions = queryString.getParam(
|
19
|
-
env.catchExceptions(typeof catchingExceptions ===
|
18
|
+
var catchingExceptions = queryString.getParam("catch");
|
19
|
+
env.catchExceptions(typeof catchingExceptions === "undefined" ? true : catchingExceptions);
|
20
20
|
|
21
21
|
var htmlReporter = new jasmine.HtmlReporter({
|
22
22
|
env: env,
|
23
|
-
onRaiseExceptionsClick: function() { queryString.setParam(
|
23
|
+
onRaiseExceptionsClick: function() { queryString.setParam("catch", !env.catchingExceptions()); },
|
24
24
|
getContainer: function() { return document.body; },
|
25
25
|
createElement: function() { return document.createElement.apply(document, arguments); },
|
26
26
|
createTextNode: function() { return document.createTextNode.apply(document, arguments); },
|
@@ -29,7 +29,7 @@
|
|
29
29
|
|
30
30
|
var phantomReporter = new jasmine.PhantomReporter({
|
31
31
|
env: env,
|
32
|
-
onRaiseExceptionsClick: function() { queryString.setParam(
|
32
|
+
onRaiseExceptionsClick: function() { queryString.setParam("catch", !env.catchingExceptions()); },
|
33
33
|
timer: new jasmine.Timer()
|
34
34
|
});
|
35
35
|
|
@@ -38,7 +38,7 @@
|
|
38
38
|
env.addReporter(phantomReporter);
|
39
39
|
|
40
40
|
var specFilter = new jasmine.HtmlSpecFilter({
|
41
|
-
filterString: function() { return queryString.getParam(
|
41
|
+
filterString: function() { return queryString.getParam("spec"); }
|
42
42
|
});
|
43
43
|
|
44
44
|
env.specFilter = function(spec) {
|
@@ -28,7 +28,7 @@
|
|
28
28
|
stats.elapsed = new Date().getTime() - start;
|
29
29
|
|
30
30
|
callPhantom({
|
31
|
-
name:
|
31
|
+
name: "end",
|
32
32
|
stats: stats
|
33
33
|
});
|
34
34
|
};
|
@@ -37,15 +37,15 @@
|
|
37
37
|
stats.tests += 1;
|
38
38
|
|
39
39
|
callPhantom({
|
40
|
-
name:
|
40
|
+
name: "test start",
|
41
41
|
title: result.description
|
42
42
|
});
|
43
43
|
};
|
44
44
|
|
45
45
|
this.specDone = function(result) {
|
46
|
-
var pending = result.status ===
|
47
|
-
var passed = result.status ===
|
48
|
-
var failed = result.status ===
|
46
|
+
var pending = result.status === "pending";
|
47
|
+
var passed = result.status === "passed";
|
48
|
+
var failed = result.status === "failed";
|
49
49
|
var error, assertion;
|
50
50
|
|
51
51
|
stats.assertions += result.failedExpectations.length;
|
@@ -56,13 +56,13 @@
|
|
56
56
|
|
57
57
|
if (failed) {
|
58
58
|
assertion = result.failedExpectations[0];
|
59
|
-
error = assertion.stack.replace(/^\s*/gm,
|
60
|
-
error = error.replace(/^\s+at .*?assets\/jasmine\/(jasmine|boot).*?\.js.*?$/mg,
|
61
|
-
error = error.replace(/\n+$/,
|
59
|
+
error = assertion.stack.replace(/^\s*/gm, " ");
|
60
|
+
error = error.replace(/^\s+at .*?assets\/jasmine\/(jasmine|boot).*?\.js.*?$/mg, "");
|
61
|
+
error = error.replace(/\n+$/, "");
|
62
62
|
}
|
63
63
|
|
64
64
|
callPhantom({
|
65
|
-
name:
|
65
|
+
name: "test end",
|
66
66
|
title: result.description,
|
67
67
|
passed: passed,
|
68
68
|
pending: pending,
|
@@ -72,7 +72,7 @@
|
|
72
72
|
|
73
73
|
this.suiteStarted = function(result) {
|
74
74
|
callPhantom({
|
75
|
-
name:
|
75
|
+
name: "suite start",
|
76
76
|
title: result.description
|
77
77
|
});
|
78
78
|
};
|
@@ -14,85 +14,85 @@ Mocha.reporters.PhantomJS = function(runner) {
|
|
14
14
|
|
15
15
|
var start;
|
16
16
|
|
17
|
-
runner.on(
|
17
|
+
runner.on("pass", function(test){
|
18
18
|
stats.passes += 1;
|
19
19
|
});
|
20
20
|
|
21
|
-
runner.on(
|
21
|
+
runner.on("fail", function(test, err){
|
22
22
|
stats.fails += 1;
|
23
23
|
});
|
24
24
|
|
25
|
-
runner.on(
|
25
|
+
runner.on("pending", function(suite){
|
26
26
|
stats.pending += 1;
|
27
27
|
});
|
28
28
|
|
29
|
-
runner.on(
|
29
|
+
runner.on("start", function(test){
|
30
30
|
start = new Date().getTime();
|
31
31
|
});
|
32
32
|
|
33
|
-
runner.on(
|
33
|
+
runner.on("end", function(){
|
34
34
|
stats.elapsed = new Date().getTime() - start;
|
35
35
|
callPhantom({
|
36
|
-
name:
|
36
|
+
name: "end",
|
37
37
|
stats: stats
|
38
38
|
});
|
39
39
|
});
|
40
40
|
|
41
|
-
runner.on(
|
41
|
+
runner.on("test", function(test){
|
42
42
|
stats.tests += 1;
|
43
43
|
|
44
44
|
callPhantom({
|
45
|
-
name:
|
45
|
+
name: "test start",
|
46
46
|
title: test.title
|
47
47
|
});
|
48
48
|
});
|
49
49
|
|
50
|
-
runner.on(
|
51
|
-
if (test.state ===
|
50
|
+
runner.on("test end", function(test){
|
51
|
+
if (test.state === "failed") {
|
52
52
|
var error = test.err.stack || test.err.toString();
|
53
53
|
|
54
54
|
// FF / Opera do not add the message
|
55
55
|
if (!~error.indexOf(test.err.message)) {
|
56
|
-
error = test.err.message +
|
56
|
+
error = test.err.message + "\n" + error;
|
57
57
|
}
|
58
58
|
|
59
59
|
// <=IE7 stringifies to [Object Error]. Since it can be overloaded, we
|
60
60
|
// check for the result of the stringifying.
|
61
|
-
if (
|
61
|
+
if ("[object Error]" == error) {
|
62
62
|
error = test.err.message;
|
63
63
|
}
|
64
64
|
|
65
|
-
// Safari doesn
|
65
|
+
// Safari doesn"t give you a stack. Let"s at least provide a source line.
|
66
66
|
if (!test.err.stack && test.err.sourceURL && test.err.line !== undefined) {
|
67
67
|
error += "\n(" + test.err.sourceURL + ":" + test.err.line + ")";
|
68
68
|
}
|
69
69
|
|
70
|
-
error = error.replace(/^\s+at .*?assets\/mocha\/.*?\.js.*?$/mg,
|
71
|
-
error = error.replace(/^\s+at .*?assets\/expect\/.*?\.js.*?$/mg,
|
72
|
-
error = error.replace(/^\s+at .*?assets\/should\/.*?\.js.*?$/mg,
|
73
|
-
error = error.replace(/^\s+at .*?assets\/chai\/.*?\.js.*?$/mg,
|
74
|
-
error = error.replace(/\n+$/,
|
70
|
+
error = error.replace(/^\s+at .*?assets\/mocha\/.*?\.js.*?$/mg, "");
|
71
|
+
error = error.replace(/^\s+at .*?assets\/expect\/.*?\.js.*?$/mg, "");
|
72
|
+
error = error.replace(/^\s+at .*?assets\/should\/.*?\.js.*?$/mg, "");
|
73
|
+
error = error.replace(/^\s+at .*?assets\/chai\/.*?\.js.*?$/mg, "");
|
74
|
+
error = error.replace(/\n+$/, "");
|
75
75
|
}
|
76
76
|
|
77
77
|
callPhantom({
|
78
|
-
name:
|
78
|
+
name: "test end",
|
79
79
|
title: test.title,
|
80
|
-
passed: test.state ===
|
80
|
+
passed: test.state === "passed",
|
81
81
|
pending: test.pending,
|
82
82
|
failure: error
|
83
83
|
});
|
84
84
|
});
|
85
85
|
|
86
|
-
runner.on(
|
86
|
+
runner.on("suite", function(suite){
|
87
87
|
callPhantom({
|
88
|
-
name:
|
88
|
+
name: "suite start",
|
89
89
|
title: suite.title
|
90
90
|
});
|
91
91
|
});
|
92
92
|
|
93
|
-
runner.on(
|
93
|
+
runner.on("suite end", function(suite){
|
94
94
|
callPhantom({
|
95
|
-
name:
|
95
|
+
name: "suite end",
|
96
96
|
title: suite.title
|
97
97
|
});
|
98
98
|
});
|
@@ -19,7 +19,7 @@
|
|
19
19
|
stats.tests += 1;
|
20
20
|
|
21
21
|
callPhantom({
|
22
|
-
name:
|
22
|
+
name: "test start",
|
23
23
|
title: data.name
|
24
24
|
});
|
25
25
|
});
|
@@ -34,7 +34,7 @@
|
|
34
34
|
|
35
35
|
QUnit.moduleStart(function(data){
|
36
36
|
callPhantom({
|
37
|
-
name:
|
37
|
+
name: "suite start",
|
38
38
|
title: data.name
|
39
39
|
});
|
40
40
|
});
|
@@ -47,13 +47,13 @@
|
|
47
47
|
error = assertion.message;
|
48
48
|
|
49
49
|
if (assertion.source) {
|
50
|
-
error +=
|
50
|
+
error += "\n" + assertion.source;
|
51
51
|
}
|
52
52
|
|
53
|
-
error = error.replace(/(Died on test #\d+)/gmi,
|
54
|
-
error = error.replace(/^\s*/gm,
|
55
|
-
error = error.replace(/^\s+at .*?assets\/qunit\/qunit.*?\.js.*?$/mg,
|
56
|
-
error = error.replace(/\n+$/,
|
53
|
+
error = error.replace(/(Died on test #\d+)/gmi, "$1\n");
|
54
|
+
error = error.replace(/^\s*/gm, " ");
|
55
|
+
error = error.replace(/^\s+at .*?assets\/qunit\/qunit.*?\.js.*?$/mg, "");
|
56
|
+
error = error.replace(/\n+$/, "");
|
57
57
|
} else if (data.skipped) {
|
58
58
|
stats.pending += 1;
|
59
59
|
} else {
|
@@ -61,7 +61,7 @@
|
|
61
61
|
}
|
62
62
|
|
63
63
|
callPhantom({
|
64
|
-
name:
|
64
|
+
name: "test end",
|
65
65
|
title: data.name,
|
66
66
|
passed: data.failed === 0 && !data.skipped,
|
67
67
|
pending: data.skipped,
|
@@ -77,7 +77,7 @@
|
|
77
77
|
stats.elapsed = new Date().getTime() - start;
|
78
78
|
|
79
79
|
callPhantom({
|
80
|
-
name:
|
80
|
+
name: "end",
|
81
81
|
stats: stats
|
82
82
|
});
|
83
83
|
});
|
@@ -1,11 +1,11 @@
|
|
1
|
-
module(
|
1
|
+
module("Router", {setup: function(){
|
2
2
|
App.reset();
|
3
3
|
}});
|
4
4
|
|
5
|
-
test(
|
6
|
-
visit(
|
5
|
+
test("root route", function() {
|
6
|
+
visit("/");
|
7
7
|
|
8
8
|
andThen(function(){
|
9
|
-
equal(currentRouteName(),
|
9
|
+
equal(currentRouteName(), "index");
|
10
10
|
});
|
11
11
|
});
|