jsus 0.2.0 → 0.2.1

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 (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"