visionmedia-jspec 1.1.7 → 2.0.0

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.
data/spec/spec.rhino.js CHANGED
@@ -1,8 +1,12 @@
1
1
 
2
2
  load('lib/jspec.js')
3
+ load('spec/spec.grammar-less.js')
3
4
 
4
5
  JSpec
5
6
  .exec('spec/spec.grammar.js')
6
- .exec('spec/spec.core.js')
7
+ .exec('spec/spec.js')
8
+ .exec('spec/spec.matchers.js')
9
+ .exec('spec/spec.utils.js')
10
+ .exec('spec/spec.shared-behaviors.js')
7
11
  .run({ formatter : JSpec.formatters.Terminal, failuresOnly : true })
8
12
  .report()
@@ -0,0 +1,51 @@
1
+
2
+ describe 'Shared Behaviors'
3
+ describe 'User'
4
+ before
5
+ User = function(name) { this.name = name }
6
+ user = new User('joe')
7
+ end
8
+
9
+ it 'should have a name'
10
+ user.should.have_property 'name'
11
+ end
12
+
13
+ describe 'Administrator'
14
+ should_behave_like('User')
15
+
16
+ before
17
+ Admin = function(name) { this.name = name }
18
+ Admin.prototype.may = function(perm){ return true }
19
+ user = new Admin('tj')
20
+ end
21
+
22
+ it 'should have access to all permissions'
23
+ user.may('edit pages').should.be_true
24
+ end
25
+
26
+ describe 'Super Administrator'
27
+ should_behave_like('Administrator')
28
+
29
+ before
30
+ SuperAdmin = function(name) { this.name = name }
31
+ SuperAdmin.prototype.may = function(perm){ return true }
32
+ user = new SuperAdmin('tj')
33
+ end
34
+ end
35
+ end
36
+ end
37
+
38
+ describe 'findSuite'
39
+ it 'should find a suite by full description'
40
+ JSpec.findSuite('Shared Behaviors User Administrator').should.be_a JSpec.Suite
41
+ end
42
+
43
+ it 'should find a suite by name'
44
+ JSpec.findSuite('User').should.be_a JSpec.Suite
45
+ end
46
+
47
+ it 'should return null when not found'
48
+ JSpec.findSuite('Rawr').should.be_null
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,138 @@
1
+
2
+ describe 'Utility'
3
+ describe 'wait'
4
+ it 'should wait for n milliseconds'
5
+ wait(2000)
6
+ setTimeout(function(){
7
+ true.should.be true
8
+ }, 1500)
9
+ end
10
+
11
+ it 'should wait for n seconds'
12
+ wait(3, 'seconds')
13
+ setTimeout(function(){
14
+ true.should.be true
15
+ }, 2500)
16
+ end
17
+ end
18
+
19
+ describe 'query'
20
+ it 'should return a pairs value'
21
+ query('suite', '?suite=Positive%20specs').should.equal 'Positive specs'
22
+ end
23
+
24
+ it 'should return null when key is not present'
25
+ query('foo', '?suite=Positive%20specs').should.be_null
26
+ end
27
+ end
28
+
29
+ describe 'strip'
30
+ it 'should strip whitespace by default'
31
+ strip(" foo \n\n").should.equal 'foo'
32
+ end
33
+
34
+ it 'should strip the characters passed'
35
+ strip('[foo]', '\\[\\]').should.equal 'foo'
36
+ end
37
+ end
38
+
39
+ describe 'each'
40
+ it 'should iterate an array'
41
+ result = []
42
+ each([1,2,3], function(value){
43
+ result.push(value)
44
+ })
45
+ result.should.eql [1,2,3]
46
+ end
47
+
48
+ it 'should iterate words in a string'
49
+ result = []
50
+ each('some foo bar', function(value){
51
+ result.push(value)
52
+ })
53
+ result.should.eql ['some', 'foo', 'bar']
54
+ end
55
+ end
56
+
57
+ describe 'map'
58
+ it 'should return an array of mapped values'
59
+ result = map([1,2,3], function(value){
60
+ return value * 2
61
+ })
62
+ result.should.eql [2,4,6]
63
+ end
64
+
65
+ it 'should inherit the ability to iterate words in a string'
66
+ result = map('some foo bar', function(i, value){
67
+ return i + '-' + value
68
+ })
69
+ result.should.eql ['0-some', '1-foo', '2-bar']
70
+ end
71
+ end
72
+
73
+ describe 'inject'
74
+ it 'should provide a memo object while iterating, not expecting returning of memo for composits'
75
+ result = inject([1,2,3], [], function(memo, value){
76
+ memo.push(value)
77
+ })
78
+ result.should.eql [1,2,3]
79
+ end
80
+
81
+ it 'should require returning of memo for scalar variables'
82
+ result = inject([1,2,3], false, function(memo, value){
83
+ return memo ? memo : value == 2
84
+ })
85
+ result.should.be_true
86
+ end
87
+ end
88
+
89
+ describe 'any'
90
+ it 'should return null when no matches are found'
91
+ result = any('some foo bar', function(value){
92
+ return value.length > 5
93
+ })
94
+ result.should.be_null
95
+ end
96
+
97
+ it 'should return the value of the first matching expression'
98
+ result = any('foo some bar', function(value){
99
+ return value.length > 3
100
+ })
101
+ result.should.eql 'some'
102
+ end
103
+ end
104
+
105
+ describe 'select'
106
+ it 'should return an array of values when the callback evaluates to true'
107
+ result = select('some foo bar baz stuff', function(value){
108
+ return value.length > 3
109
+ })
110
+ result.should.eql ['some', 'stuff']
111
+ end
112
+ end
113
+
114
+ describe 'last'
115
+ it 'should return the last element in an array'
116
+ last(['foo', 'bar']).should.eql 'bar'
117
+ end
118
+ end
119
+
120
+ describe 'argumentsToArray'
121
+ it 'should return an array of arguments'
122
+ func = function(){ return argumentsToArray(arguments) }
123
+ func('foo', 'bar').should.eql ['foo', 'bar']
124
+ end
125
+
126
+ it 'should return the offset of an arguments array'
127
+ func = function(){ return argumentsToArray(arguments, 2) }
128
+ func('foo', 'bar', 'baz').should.eql ['baz']
129
+ end
130
+ end
131
+
132
+ describe 'does'
133
+ it 'should assert without reporting'
134
+ does('foo', 'eql', 'foo')
135
+ JSpec.currentSpec.assertions.should.have_length 0
136
+ end
137
+ end
138
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: visionmedia-jspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.7
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - TJ Holowaychuk
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-04-22 00:00:00 -07:00
12
+ date: 2009-04-27 00:00:00 -07:00
13
13
  default_executable: jspec
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -32,6 +32,7 @@ extra_rdoc_files:
32
32
  - bin/jspec
33
33
  - lib/images/bg.png
34
34
  - lib/images/hr.png
35
+ - lib/images/loading.gif
35
36
  - lib/images/sprites.bg.png
36
37
  - lib/images/sprites.png
37
38
  - lib/images/vr.png
@@ -45,6 +46,7 @@ files:
45
46
  - jspec.gemspec
46
47
  - lib/images/bg.png
47
48
  - lib/images/hr.png
49
+ - lib/images/loading.gif
48
50
  - lib/images/sprites.bg.png
49
51
  - lib/images/sprites.png
50
52
  - lib/images/vr.png
@@ -59,12 +61,15 @@ files:
59
61
  - spec/async
60
62
  - spec/jquery-1.3.1.js
61
63
  - spec/server.html
62
- - spec/spec.core.dom.js
63
- - spec/spec.core.js
64
+ - spec/spec.grammar-less.js
64
65
  - spec/spec.grammar.js
65
66
  - spec/spec.html
66
67
  - spec/spec.jquery.js
68
+ - spec/spec.js
69
+ - spec/spec.matchers.js
67
70
  - spec/spec.rhino.js
71
+ - spec/spec.shared-behaviors.js
72
+ - spec/spec.utils.js
68
73
  - templates/default/History.rdoc
69
74
  - templates/default/lib/yourlib.core.js
70
75
  - templates/default/README.rdoc
@@ -1,12 +0,0 @@
1
-
2
- describe 'DOM Sandbox'
3
-
4
- before_each
5
- .dom = this.defaultSandbox() // Normall sandbox() jQuery helpers override this
6
- end
7
-
8
- it 'should allow creation of sandboxes'
9
- .dom.should_be_a HTMLDivElement
10
- end
11
-
12
- end