jsus 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. data/CHANGELOG +5 -0
  2. data/Gemfile +1 -1
  3. data/Gemfile.lock +12 -2
  4. data/VERSION +1 -1
  5. data/autotest/discover.rb +1 -0
  6. data/bin/jsus +86 -90
  7. data/cucumber.yml +1 -0
  8. data/features/command-line/basic_dependency_resolution.feature +99 -0
  9. data/features/command-line/extensions.feature +70 -0
  10. data/features/command-line/external_dependency_resolution.feature +120 -0
  11. data/features/command-line/json_package.feature +50 -0
  12. data/features/command-line/structure_json.feature +56 -0
  13. data/features/data/Basic/Source/Library/Color.js +16 -0
  14. data/features/data/Basic/Source/Widget/Input/Input.Color.js +19 -0
  15. data/features/data/Basic/package.yml +9 -0
  16. data/features/data/BasicWrongOrder/Source/Library/Color.js +16 -0
  17. data/features/data/BasicWrongOrder/Source/Widget/Input/Input.Color.js +19 -0
  18. data/features/data/BasicWrongOrder/package.yml +9 -0
  19. data/features/data/Extensions/Mootools/Source/Core.js +16 -0
  20. data/features/data/Extensions/Mootools/package.yml +8 -0
  21. data/features/data/Extensions/Source/Extensions/MootoolsCore.js +16 -0
  22. data/features/data/Extensions/Source/Library/Color.js +19 -0
  23. data/features/data/Extensions/package.yml +9 -0
  24. data/features/data/ExternalDependency/Mootools/Source/Core.js +16 -0
  25. data/features/data/ExternalDependency/Mootools/package.yml +8 -0
  26. data/features/data/ExternalDependency/Source/Library/Color.js +19 -0
  27. data/features/data/ExternalDependency/Source/Widget/Input/Input.Color.js +19 -0
  28. data/features/data/ExternalDependency/package.yml +9 -0
  29. data/features/data/ExternalDependencyWithExternalDependency/Leonardo/Source/Core.js +19 -0
  30. data/features/data/ExternalDependencyWithExternalDependency/Leonardo/package.yml +8 -0
  31. data/features/data/ExternalDependencyWithExternalDependency/Mootools/Source/Core.js +16 -0
  32. data/features/data/ExternalDependencyWithExternalDependency/Mootools/package.yml +8 -0
  33. data/features/data/ExternalDependencyWithExternalDependency/Source/Library/Color.js +19 -0
  34. data/features/data/ExternalDependencyWithExternalDependency/Source/Widget/Input/Input.Color.js +19 -0
  35. data/features/data/ExternalDependencyWithExternalDependency/package.yml +9 -0
  36. data/features/data/JsonPackage/Source/Library/Color.js +16 -0
  37. data/features/data/JsonPackage/Source/Widget/Input/Input.Color.js +19 -0
  38. data/features/data/JsonPackage/package.json +12 -0
  39. data/features/data/tmp2/package.js +35 -0
  40. data/features/data/tmp2/scripts.json +13 -0
  41. data/features/data/tmp2/tree.json +26 -0
  42. data/features/step_definitions/cli_steps.rb +53 -0
  43. data/features/support/env.rb +9 -0
  44. data/jsus.gemspec +42 -5
  45. metadata +45 -8
@@ -0,0 +1,19 @@
1
+ /*
2
+ ---
3
+
4
+ script: Input.Color.js
5
+
6
+ description: Cool colorpicker for everyone to enjoy
7
+
8
+ license: MIT-style license
9
+
10
+ authors:
11
+ - Yaroslaff Fedin
12
+
13
+ requires:
14
+ - Color
15
+
16
+ provides: [Input.Color]
17
+
18
+ ...
19
+ */
@@ -0,0 +1,9 @@
1
+ name: Package
2
+ filename: package.js
3
+ web: http://github.com/markiz/jsus
4
+ description: Jsus package with external dependency
5
+ license: Public Domain, http://unlicense.org/UNLICENSE
6
+ authors: Mark Abramov (http://github.com/markiz)
7
+ sources:
8
+ - "Source/Library/Color.js"
9
+ - "Source/Widget/Input/Input.Color.js"
@@ -0,0 +1,19 @@
1
+ /*
2
+ ---
3
+
4
+ script: Core.js
5
+
6
+ description: Leonardo fake core
7
+
8
+ license: Public Domain, http://unlicense.org/UNLICENSE
9
+
10
+ authors:
11
+ - Mark Abramov
12
+
13
+ requires:
14
+ - Mootools/Core
15
+
16
+ provides: [Core]
17
+
18
+ ...
19
+ */
@@ -0,0 +1,8 @@
1
+ name: Leonardo
2
+ filename: package.js
3
+ web: http://github.com/markiz/jsus
4
+ description: Another fake package named leonardo depending on mootools core
5
+ license: Public Domain, http://unlicense.org/UNLICENSE
6
+ authors: Mark Abramov (http://github.com/markiz)
7
+ sources:
8
+ - "Source/Core.js"
@@ -0,0 +1,16 @@
1
+ /*
2
+ ---
3
+
4
+ script: Core.js
5
+
6
+ description: Mootools fake core
7
+
8
+ license: MIT-style license
9
+
10
+ authors:
11
+ - Valerio Proietti
12
+
13
+ provides: [Core]
14
+
15
+ ...
16
+ */
@@ -0,0 +1,8 @@
1
+ name: Mootools
2
+ filename: mootools.js
3
+ web: http://mootools.net
4
+ description: Fake mootools package
5
+ license: Public Domain, http://unlicense.org/UNLICENSE
6
+ authors: mootools authors
7
+ sources:
8
+ - "Source/Core.js"
@@ -0,0 +1,19 @@
1
+ /*
2
+ ---
3
+
4
+ script: Color.js
5
+
6
+ description: A library to work with colors
7
+
8
+ license: MIT-style license
9
+
10
+ authors:
11
+ - Valerio Proietti
12
+
13
+ requires:
14
+ - Leonardo/Core
15
+
16
+ provides: [Color]
17
+
18
+ ...
19
+ */
@@ -0,0 +1,19 @@
1
+ /*
2
+ ---
3
+
4
+ script: Input.Color.js
5
+
6
+ description: Cool colorpicker for everyone to enjoy
7
+
8
+ license: MIT-style license
9
+
10
+ authors:
11
+ - Yaroslaff Fedin
12
+
13
+ requires:
14
+ - Color
15
+
16
+ provides: [Input.Color]
17
+
18
+ ...
19
+ */
@@ -0,0 +1,9 @@
1
+ name: Package
2
+ filename: package.js
3
+ web: http://github.com/markiz/jsus
4
+ description: Jsus package with external dependency
5
+ license: Public Domain, http://unlicense.org/UNLICENSE
6
+ authors: Mark Abramov (http://github.com/markiz)
7
+ sources:
8
+ - "Source/Library/Color.js"
9
+ - "Source/Widget/Input/Input.Color.js"
@@ -0,0 +1,16 @@
1
+ /*
2
+ ---
3
+
4
+ script: Color.js
5
+
6
+ description: A library to work with colors
7
+
8
+ license: MIT-style license
9
+
10
+ authors:
11
+ - Valerio Proietti
12
+
13
+ provides: [Color]
14
+
15
+ ...
16
+ */
@@ -0,0 +1,19 @@
1
+ /*
2
+ ---
3
+
4
+ script: Input.Color.js
5
+
6
+ description: Cool colorpicker for everyone to enjoy
7
+
8
+ license: MIT-style license
9
+
10
+ authors:
11
+ - Yaroslaff Fedin
12
+
13
+ requires:
14
+ - Color
15
+
16
+ provides: [Input.Color]
17
+
18
+ ...
19
+ */
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "Package",
3
+ "filename": "package.js",
4
+ "web": "http://github.com/markiz/jsus",
5
+ "description": "Jsus json package file",
6
+ "license": "Public Domain, http://unlicense.org/UNLICENSE",
7
+ "authors": "Mark Abramov (http://github.com/markiz)",
8
+ "sources": [
9
+ "Source/Library/Color.js",
10
+ "Source/Widget/Input/Input.Color.js"
11
+ ]
12
+ }
@@ -0,0 +1,35 @@
1
+ /*
2
+ ---
3
+
4
+ script: Color.js
5
+
6
+ description: A library to work with colors
7
+
8
+ license: MIT-style license
9
+
10
+ authors:
11
+ - Valerio Proietti
12
+
13
+ provides: [Color]
14
+
15
+ ...
16
+ */
17
+ /*
18
+ ---
19
+
20
+ script: Input.Color.js
21
+
22
+ description: Cool colorpicker for everyone to enjoy
23
+
24
+ license: MIT-style license
25
+
26
+ authors:
27
+ - Yaroslaff Fedin
28
+
29
+ requires:
30
+ - Color
31
+
32
+ provides: [Input.Color]
33
+
34
+ ...
35
+ */
@@ -0,0 +1,13 @@
1
+ {
2
+ "Package": {
3
+ "desc": "Jsus package with correct order set",
4
+ "provides": [
5
+ "Color",
6
+ "Input.Color",
7
+ "Package/Color"
8
+ ],
9
+ "requires": [
10
+
11
+ ]
12
+ }
13
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "Library": {
3
+ "Color": {
4
+ "desc": "A library to work with colors",
5
+ "requires": [
6
+
7
+ ],
8
+ "provides": [
9
+ "Color"
10
+ ]
11
+ }
12
+ },
13
+ "Widget": {
14
+ "Input": {
15
+ "Input.Color": {
16
+ "desc": "Cool colorpicker for everyone to enjoy",
17
+ "requires": [
18
+ "Color"
19
+ ],
20
+ "provides": [
21
+ "Input.Color"
22
+ ]
23
+ }
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,53 @@
1
+ When /^I run "jsus (.*?)"$/ do |args|
2
+ Dir.chdir DATA_DIR do
3
+ `#{JSUS_CLI_PATH} #{args}`
4
+ end
5
+ end
6
+
7
+ Then /^the following files should exist:$/ do |table|
8
+ Dir.chdir DATA_DIR do
9
+ table.raw.each do |item|
10
+ filename = item[0]
11
+ File.exists?(filename).should be_true
12
+ end
13
+ end
14
+ end
15
+
16
+ Then /^file "(.*?)" should contain$/ do |filename, content|
17
+ Dir.chdir DATA_DIR do
18
+ File.read(filename).should include(content)
19
+ end
20
+ end
21
+
22
+ Then /^file "(.*?)" should contain valid JSON$/i do |filename|
23
+ Dir.chdir DATA_DIR do
24
+ json = nil
25
+ lambda { json = JSON.load(File.read(filename)) }.should_not raise_error
26
+ json.should_not be_nil
27
+ end
28
+ end
29
+
30
+ Then /^file "(.*?)" should contain JSON equivalent to$/i do |filename, expected_json|
31
+ Dir.chdir DATA_DIR do
32
+ json = JSON.load(File.read(filename))
33
+ expected = JSON.load(expected_json)
34
+ json.should == expected
35
+ end
36
+ end
37
+
38
+
39
+ Then /^file "(.*?)" should have "(.*?)" (before|after) "(.*?)"$/ do |filename, what, position, other|
40
+ Dir.chdir DATA_DIR do
41
+ position = []
42
+ contents = File.read(filename)
43
+ position << contents.index(what)
44
+ position << contents.index(other)
45
+
46
+ case position
47
+ when "before"
48
+ position[0].should < position[1]
49
+ when "after"
50
+ position[1].should < position[0]
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,9 @@
1
+ ROOT = File.expand_path(File.dirname(__FILE__) + "/../../")
2
+ DATA_DIR = ROOT + "/features/data"
3
+ TMP_DIR = DATA_DIR + "/tmp"
4
+ JSUS_CLI_PATH = ROOT + "/bin/jsus"
5
+ require 'rspec/expectations'
6
+ require 'fileutils'
7
+ After do
8
+ FileUtils.rm_rf(TMP_DIR)
9
+ end
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{jsus}
8
- s.version = "0.2.0"
8
+ s.version = "0.2.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Mark Abramov"]
12
- s.date = %q{2011-01-15}
12
+ s.date = %q{2011-01-17}
13
13
  s.default_executable = %q{jsus}
14
14
  s.description = %q{Javascript packager and dependency resolver}
15
15
  s.email = %q{markizko@gmail.com}
@@ -32,6 +32,43 @@ Gem::Specification.new do |s|
32
32
  "VERSION",
33
33
  "autotest/discover.rb",
34
34
  "bin/jsus",
35
+ "cucumber.yml",
36
+ "features/command-line/basic_dependency_resolution.feature",
37
+ "features/command-line/extensions.feature",
38
+ "features/command-line/external_dependency_resolution.feature",
39
+ "features/command-line/json_package.feature",
40
+ "features/command-line/structure_json.feature",
41
+ "features/data/Basic/Source/Library/Color.js",
42
+ "features/data/Basic/Source/Widget/Input/Input.Color.js",
43
+ "features/data/Basic/package.yml",
44
+ "features/data/BasicWrongOrder/Source/Library/Color.js",
45
+ "features/data/BasicWrongOrder/Source/Widget/Input/Input.Color.js",
46
+ "features/data/BasicWrongOrder/package.yml",
47
+ "features/data/Extensions/Mootools/Source/Core.js",
48
+ "features/data/Extensions/Mootools/package.yml",
49
+ "features/data/Extensions/Source/Extensions/MootoolsCore.js",
50
+ "features/data/Extensions/Source/Library/Color.js",
51
+ "features/data/Extensions/package.yml",
52
+ "features/data/ExternalDependency/Mootools/Source/Core.js",
53
+ "features/data/ExternalDependency/Mootools/package.yml",
54
+ "features/data/ExternalDependency/Source/Library/Color.js",
55
+ "features/data/ExternalDependency/Source/Widget/Input/Input.Color.js",
56
+ "features/data/ExternalDependency/package.yml",
57
+ "features/data/ExternalDependencyWithExternalDependency/Leonardo/Source/Core.js",
58
+ "features/data/ExternalDependencyWithExternalDependency/Leonardo/package.yml",
59
+ "features/data/ExternalDependencyWithExternalDependency/Mootools/Source/Core.js",
60
+ "features/data/ExternalDependencyWithExternalDependency/Mootools/package.yml",
61
+ "features/data/ExternalDependencyWithExternalDependency/Source/Library/Color.js",
62
+ "features/data/ExternalDependencyWithExternalDependency/Source/Widget/Input/Input.Color.js",
63
+ "features/data/ExternalDependencyWithExternalDependency/package.yml",
64
+ "features/data/JsonPackage/Source/Library/Color.js",
65
+ "features/data/JsonPackage/Source/Widget/Input/Input.Color.js",
66
+ "features/data/JsonPackage/package.json",
67
+ "features/data/tmp2/package.js",
68
+ "features/data/tmp2/scripts.json",
69
+ "features/data/tmp2/tree.json",
70
+ "features/step_definitions/cli_steps.rb",
71
+ "features/support/env.rb",
35
72
  "jsus.gemspec",
36
73
  "lib/jsus.rb",
37
74
  "lib/jsus/container.rb",
@@ -151,18 +188,18 @@ Gem::Specification.new do |s|
151
188
  s.add_runtime_dependency(%q<activesupport>, [">= 0"])
152
189
  s.add_runtime_dependency(%q<json_pure>, [">= 0"])
153
190
  s.add_runtime_dependency(%q<rgl>, [">= 0"])
154
- s.add_runtime_dependency(%q<choice>, [">= 0"])
155
191
  s.add_development_dependency(%q<bundler>, [">= 0"])
156
192
  s.add_development_dependency(%q<rspec>, [">= 0"])
193
+ s.add_development_dependency(%q<cucumber>, [">= 0"])
157
194
  s.add_development_dependency(%q<jeweler>, [">= 0"])
158
195
  s.add_development_dependency(%q<murdoc>, [">= 0"])
159
196
  else
160
197
  s.add_dependency(%q<activesupport>, [">= 0"])
161
198
  s.add_dependency(%q<json_pure>, [">= 0"])
162
199
  s.add_dependency(%q<rgl>, [">= 0"])
163
- s.add_dependency(%q<choice>, [">= 0"])
164
200
  s.add_dependency(%q<bundler>, [">= 0"])
165
201
  s.add_dependency(%q<rspec>, [">= 0"])
202
+ s.add_dependency(%q<cucumber>, [">= 0"])
166
203
  s.add_dependency(%q<jeweler>, [">= 0"])
167
204
  s.add_dependency(%q<murdoc>, [">= 0"])
168
205
  end
@@ -170,9 +207,9 @@ Gem::Specification.new do |s|
170
207
  s.add_dependency(%q<activesupport>, [">= 0"])
171
208
  s.add_dependency(%q<json_pure>, [">= 0"])
172
209
  s.add_dependency(%q<rgl>, [">= 0"])
173
- s.add_dependency(%q<choice>, [">= 0"])
174
210
  s.add_dependency(%q<bundler>, [">= 0"])
175
211
  s.add_dependency(%q<rspec>, [">= 0"])
212
+ s.add_dependency(%q<cucumber>, [">= 0"])
176
213
  s.add_dependency(%q<jeweler>, [">= 0"])
177
214
  s.add_dependency(%q<murdoc>, [">= 0"])
178
215
  end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 2
8
- - 0
9
- version: 0.2.0
8
+ - 1
9
+ version: 0.2.1
10
10
  platform: ruby
11
11
  authors:
12
12
  - Mark Abramov
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2011-01-15 00:00:00 +03:00
17
+ date: 2011-01-17 00:00:00 +03:00
18
18
  default_executable: jsus
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -57,7 +57,7 @@ dependencies:
57
57
  prerelease: false
58
58
  version_requirements: *id003
59
59
  - !ruby/object:Gem::Dependency
60
- name: choice
60
+ name: bundler
61
61
  requirement: &id004 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
@@ -66,11 +66,11 @@ dependencies:
66
66
  segments:
67
67
  - 0
68
68
  version: "0"
69
- type: :runtime
69
+ type: :development
70
70
  prerelease: false
71
71
  version_requirements: *id004
72
72
  - !ruby/object:Gem::Dependency
73
- name: bundler
73
+ name: rspec
74
74
  requirement: &id005 !ruby/object:Gem::Requirement
75
75
  none: false
76
76
  requirements:
@@ -83,7 +83,7 @@ dependencies:
83
83
  prerelease: false
84
84
  version_requirements: *id005
85
85
  - !ruby/object:Gem::Dependency
86
- name: rspec
86
+ name: cucumber
87
87
  requirement: &id006 !ruby/object:Gem::Requirement
88
88
  none: false
89
89
  requirements:
@@ -144,6 +144,43 @@ files:
144
144
  - VERSION
145
145
  - autotest/discover.rb
146
146
  - bin/jsus
147
+ - cucumber.yml
148
+ - features/command-line/basic_dependency_resolution.feature
149
+ - features/command-line/extensions.feature
150
+ - features/command-line/external_dependency_resolution.feature
151
+ - features/command-line/json_package.feature
152
+ - features/command-line/structure_json.feature
153
+ - features/data/Basic/Source/Library/Color.js
154
+ - features/data/Basic/Source/Widget/Input/Input.Color.js
155
+ - features/data/Basic/package.yml
156
+ - features/data/BasicWrongOrder/Source/Library/Color.js
157
+ - features/data/BasicWrongOrder/Source/Widget/Input/Input.Color.js
158
+ - features/data/BasicWrongOrder/package.yml
159
+ - features/data/Extensions/Mootools/Source/Core.js
160
+ - features/data/Extensions/Mootools/package.yml
161
+ - features/data/Extensions/Source/Extensions/MootoolsCore.js
162
+ - features/data/Extensions/Source/Library/Color.js
163
+ - features/data/Extensions/package.yml
164
+ - features/data/ExternalDependency/Mootools/Source/Core.js
165
+ - features/data/ExternalDependency/Mootools/package.yml
166
+ - features/data/ExternalDependency/Source/Library/Color.js
167
+ - features/data/ExternalDependency/Source/Widget/Input/Input.Color.js
168
+ - features/data/ExternalDependency/package.yml
169
+ - features/data/ExternalDependencyWithExternalDependency/Leonardo/Source/Core.js
170
+ - features/data/ExternalDependencyWithExternalDependency/Leonardo/package.yml
171
+ - features/data/ExternalDependencyWithExternalDependency/Mootools/Source/Core.js
172
+ - features/data/ExternalDependencyWithExternalDependency/Mootools/package.yml
173
+ - features/data/ExternalDependencyWithExternalDependency/Source/Library/Color.js
174
+ - features/data/ExternalDependencyWithExternalDependency/Source/Widget/Input/Input.Color.js
175
+ - features/data/ExternalDependencyWithExternalDependency/package.yml
176
+ - features/data/JsonPackage/Source/Library/Color.js
177
+ - features/data/JsonPackage/Source/Widget/Input/Input.Color.js
178
+ - features/data/JsonPackage/package.json
179
+ - features/data/tmp2/package.js
180
+ - features/data/tmp2/scripts.json
181
+ - features/data/tmp2/tree.json
182
+ - features/step_definitions/cli_steps.rb
183
+ - features/support/env.rb
147
184
  - jsus.gemspec
148
185
  - lib/jsus.rb
149
186
  - lib/jsus/container.rb
@@ -248,7 +285,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
248
285
  requirements:
249
286
  - - ">="
250
287
  - !ruby/object:Gem::Version
251
- hash: -2818897829593218981
288
+ hash: -1746975261011115171
252
289
  segments:
253
290
  - 0
254
291
  version: "0"