roger 0.13.0 → 1.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.
- checksums.yaml +5 -13
- data/CHANGELOG.md +10 -0
- data/MIT_LICENSE +4 -4
- data/README.md +8 -1
- data/doc/cli.md +10 -1
- data/doc/images/logo_black-yellow.png +0 -0
- data/doc/images/logo_black-yellow.svg +1 -0
- data/doc/images/logo_plain-square.png +0 -0
- data/doc/images/logo_plain.png +0 -0
- data/doc/images/logo_plain.svg +1 -0
- data/lib/roger/cli.rb +13 -8
- data/lib/roger/cli/command.rb +0 -6
- data/lib/roger/cli/generate.rb +3 -3
- data/lib/roger/cli/serve.rb +15 -12
- data/lib/roger/generators.rb +14 -3
- data/lib/roger/helpers/logging.rb +3 -3
- data/lib/roger/mockupfile.rb +14 -14
- data/lib/roger/project.rb +19 -19
- data/lib/roger/server.rb +53 -40
- data/lib/roger/test.rb +8 -4
- data/roger.gemspec +8 -7
- data/test/helpers/cli.rb +47 -0
- data/test/project/Mockupfile +0 -3
- data/test/project/lib/tests/noop/lib/test.rb +2 -1
- data/test/unit/cli/cli_generate_test.rb +48 -0
- data/test/unit/cli/cli_serve_test.rb +142 -0
- data/test/unit/cli/cli_test_test.rb +36 -43
- data/test/unit/generators_test.rb +15 -2
- data/test/unit/test_test.rb +25 -0
- metadata +38 -11
@@ -1,6 +1,7 @@
|
|
1
1
|
require "./lib/roger/cli.rb"
|
2
2
|
require "test/unit"
|
3
|
-
|
3
|
+
|
4
|
+
require File.dirname(__FILE__) + "/../../helpers/cli"
|
4
5
|
|
5
6
|
require File.dirname(__FILE__) + "/../../project/lib/tests/fail/fail"
|
6
7
|
require File.dirname(__FILE__) + "/../../project/lib/tests/succeed/succeed"
|
@@ -10,47 +11,23 @@ require File.dirname(__FILE__) + "/../../project/lib/tests/noop/noop"
|
|
10
11
|
|
11
12
|
module Roger
|
12
13
|
class CliTestTest < ::Test::Unit::TestCase
|
14
|
+
include TestCli
|
13
15
|
|
14
|
-
def
|
15
|
-
|
16
|
-
end
|
17
|
-
|
18
|
-
|
19
|
-
# Capture stdout/stderr output
|
20
|
-
def capture
|
21
|
-
@_orig_stdout, @_orig_stderr = $stdout, $stderr
|
22
|
-
|
23
|
-
$stdout = StringIO.new
|
24
|
-
$stderr = StringIO.new
|
25
|
-
|
26
|
-
yield
|
27
|
-
|
28
|
-
return [$stdout.string, $stderr.string]
|
29
|
-
ensure
|
30
|
-
$stdout, $stderr = @_orig_stdout, @_orig_stderr
|
16
|
+
def teardown
|
17
|
+
Cli::Base.project = nil
|
31
18
|
end
|
32
19
|
|
33
20
|
def run_test_command(args, &block)
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
t.use :succeed
|
43
|
-
t.use :noop
|
21
|
+
run_command_with_mockupfile(args) do |mockupfile|
|
22
|
+
if block_given?
|
23
|
+
mockupfile.test(&block)
|
24
|
+
else
|
25
|
+
mockupfile.test do |t|
|
26
|
+
t.use :succeed
|
27
|
+
t.use :noop
|
28
|
+
end
|
44
29
|
end
|
45
30
|
end
|
46
|
-
|
47
|
-
project.mockupfile = mockupfile
|
48
|
-
|
49
|
-
Cli::Base.project = project
|
50
|
-
|
51
|
-
capture do
|
52
|
-
Cli::Base.start(args, :debug => true)
|
53
|
-
end
|
54
31
|
end
|
55
32
|
|
56
33
|
def test_has_subcommand_all
|
@@ -69,15 +46,15 @@ module Roger
|
|
69
46
|
t.use :succeed
|
70
47
|
t.use :noop
|
71
48
|
end
|
72
|
-
assert out.index("RogerNoopTest::Test") > out.index("RogerSucceedTest::Test")
|
73
|
-
end
|
49
|
+
assert out.index("RogerNoopTest::Test") > out.index("RogerSucceedTest::Test")
|
50
|
+
end
|
74
51
|
|
75
52
|
def test_subcommand_all_runs_all_tests_in_order_2
|
76
53
|
out, err = run_test_command %w{test all} do |t|
|
77
54
|
t.use :noop
|
78
|
-
t.use :succeed
|
55
|
+
t.use :succeed
|
79
56
|
end
|
80
|
-
assert out.index("RogerSucceedTest::Test") > out.index("RogerNoopTest::Test")
|
57
|
+
assert out.index("RogerSucceedTest::Test") > out.index("RogerNoopTest::Test")
|
81
58
|
end
|
82
59
|
|
83
60
|
# roger test
|
@@ -87,6 +64,22 @@ module Roger
|
|
87
64
|
assert_includes out, "RogerSucceedTest::Test"
|
88
65
|
end
|
89
66
|
|
67
|
+
# roger test -v
|
68
|
+
def test_has_option_v
|
69
|
+
# A somewhat a-typical test,
|
70
|
+
# just to make it work
|
71
|
+
cli = ::Roger::Cli::Base.new [], %w{--verbose}
|
72
|
+
cli.class.project.mockupfile.test do |t|
|
73
|
+
t.use :noop
|
74
|
+
end
|
75
|
+
|
76
|
+
out, _err = capture do
|
77
|
+
cli.invoke "test"
|
78
|
+
end
|
79
|
+
|
80
|
+
assert_includes out, "NOOP DEBUG", out
|
81
|
+
end
|
82
|
+
|
90
83
|
# roger help test
|
91
84
|
def test_help_shows_available_subcommands
|
92
85
|
out, err = run_test_command %w{help test}
|
@@ -97,7 +90,7 @@ module Roger
|
|
97
90
|
|
98
91
|
# roger test noop
|
99
92
|
def test_subcommand_x_runs_only_test_x
|
100
|
-
out, err = run_test_command %w{test noop}
|
93
|
+
out, err = run_test_command %w{test noop}
|
101
94
|
assert_includes out, "RogerNoopTest::Test"
|
102
95
|
assert_not_includes out, "RogerSucceedTest::Test"
|
103
96
|
end
|
@@ -117,7 +110,7 @@ module Roger
|
|
117
110
|
t.use :noop
|
118
111
|
t.use :fail
|
119
112
|
end
|
120
|
-
end
|
113
|
+
end
|
121
114
|
end
|
122
115
|
|
123
116
|
def test_subcommand_all_has_exit_code_1_on_failure
|
@@ -135,7 +128,7 @@ module Roger
|
|
135
128
|
t.use :noop
|
136
129
|
t.use :succeed
|
137
130
|
end
|
138
|
-
end
|
131
|
+
end
|
139
132
|
end
|
140
133
|
|
141
134
|
end
|
@@ -24,7 +24,7 @@ module CustomGens
|
|
24
24
|
# Somewhat ugly way of checking
|
25
25
|
raise StandardError if @project
|
26
26
|
end
|
27
|
-
end
|
27
|
+
end
|
28
28
|
|
29
29
|
end
|
30
30
|
end
|
@@ -33,6 +33,10 @@ module Roger
|
|
33
33
|
class GeneratorTest < ::Test::Unit::TestCase
|
34
34
|
def setup
|
35
35
|
@cli = Cli::Base.new
|
36
|
+
|
37
|
+
# Dirty hack to clean up tasks
|
38
|
+
Cli::Generate.tasks.delete("mocked")
|
39
|
+
Cli::Generate.tasks.delete("mockery")
|
36
40
|
end
|
37
41
|
|
38
42
|
def test_working_project
|
@@ -51,6 +55,15 @@ module Roger
|
|
51
55
|
assert_equal Cli::Generate.tasks["mocked"].usage, "mocked PATH ANOTHER_ARG"
|
52
56
|
end
|
53
57
|
|
58
|
+
def test_register_generator_with_custom_name
|
59
|
+
Roger::Generators.register :mockery, CustomGens::Generators::MockedGenerator
|
60
|
+
assert_includes Cli::Generate.tasks, "mockery"
|
61
|
+
end
|
62
|
+
|
63
|
+
def test_cli_help_shows_all_available_generators
|
64
|
+
|
65
|
+
end
|
66
|
+
|
54
67
|
def test_default_generator
|
55
68
|
assert_includes Cli::Generate.tasks, "new"
|
56
69
|
end
|
@@ -65,7 +78,7 @@ module Roger
|
|
65
78
|
|
66
79
|
def test_invoke_mocked_generator
|
67
80
|
Roger::Generators.register CustomGens::Generators::MockedGenerator
|
68
|
-
|
81
|
+
|
69
82
|
generators = Cli::Generate.new
|
70
83
|
assert_raise NotImplementedError do
|
71
84
|
generators.invoke :mocked
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# encoding: UTF-8
|
2
|
+
require "test/unit"
|
3
|
+
require "mocha/test_unit"
|
4
|
+
require "./lib/roger/test.rb"
|
5
|
+
|
6
|
+
module Roger
|
7
|
+
class TestTest < ::Test::Unit::TestCase
|
8
|
+
def setup
|
9
|
+
@files = ["html/javascripts/site.js",
|
10
|
+
"html/vendor/underscore/underscore.js"]
|
11
|
+
@globs = stub(map: @files)
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_get_files
|
15
|
+
test = Roger::Test.new({})
|
16
|
+
assert_equal(test.get_files(@globs), @files)
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_get_files_excludes
|
20
|
+
test = Roger::Test.new({})
|
21
|
+
assert_equal(test.get_files(@globs, ["html\/vendor\/.+.js"]),
|
22
|
+
["html/javascripts/site.js"])
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: roger
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Flurin Egger
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2015-05-05 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: thor
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
name: rack
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
32
32
|
requirements:
|
33
|
-
- -
|
33
|
+
- - '>='
|
34
34
|
- !ruby/object:Gem::Version
|
35
35
|
version: 1.0.0
|
36
36
|
type: :runtime
|
37
37
|
prerelease: false
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
|
-
- -
|
40
|
+
- - '>='
|
41
41
|
- !ruby/object:Gem::Version
|
42
42
|
version: 1.0.0
|
43
43
|
- !ruby/object:Gem::Dependency
|
@@ -72,28 +72,28 @@ dependencies:
|
|
72
72
|
name: hpricot
|
73
73
|
requirement: !ruby/object:Gem::Requirement
|
74
74
|
requirements:
|
75
|
-
- -
|
75
|
+
- - '>='
|
76
76
|
- !ruby/object:Gem::Version
|
77
77
|
version: 0.6.4
|
78
78
|
type: :runtime
|
79
79
|
prerelease: false
|
80
80
|
version_requirements: !ruby/object:Gem::Requirement
|
81
81
|
requirements:
|
82
|
-
- -
|
82
|
+
- - '>='
|
83
83
|
- !ruby/object:Gem::Version
|
84
84
|
version: 0.6.4
|
85
85
|
- !ruby/object:Gem::Dependency
|
86
86
|
name: redcarpet
|
87
87
|
requirement: !ruby/object:Gem::Requirement
|
88
88
|
requirements:
|
89
|
-
- -
|
89
|
+
- - '>='
|
90
90
|
- !ruby/object:Gem::Version
|
91
91
|
version: 3.1.1
|
92
92
|
type: :runtime
|
93
93
|
prerelease: false
|
94
94
|
version_requirements: !ruby/object:Gem::Requirement
|
95
95
|
requirements:
|
96
|
-
- -
|
96
|
+
- - '>='
|
97
97
|
- !ruby/object:Gem::Version
|
98
98
|
version: 3.1.1
|
99
99
|
- !ruby/object:Gem::Dependency
|
@@ -124,6 +124,20 @@ dependencies:
|
|
124
124
|
- - ~>
|
125
125
|
- !ruby/object:Gem::Version
|
126
126
|
version: 1.1.0
|
127
|
+
- !ruby/object:Gem::Dependency
|
128
|
+
name: puma
|
129
|
+
requirement: !ruby/object:Gem::Requirement
|
130
|
+
requirements:
|
131
|
+
- - ~>
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: 2.10.0
|
134
|
+
type: :development
|
135
|
+
prerelease: false
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
requirements:
|
138
|
+
- - ~>
|
139
|
+
- !ruby/object:Gem::Version
|
140
|
+
version: 2.10.0
|
127
141
|
description:
|
128
142
|
email:
|
129
143
|
- info@digitpaint.nl
|
@@ -143,6 +157,11 @@ files:
|
|
143
157
|
- Rakefile
|
144
158
|
- bin/roger
|
145
159
|
- doc/cli.md
|
160
|
+
- doc/images/logo_black-yellow.png
|
161
|
+
- doc/images/logo_black-yellow.svg
|
162
|
+
- doc/images/logo_plain-square.png
|
163
|
+
- doc/images/logo_plain.png
|
164
|
+
- doc/images/logo_plain.svg
|
146
165
|
- doc/mockupfile.md
|
147
166
|
- doc/templating.md
|
148
167
|
- examples/default_template/.gitignore
|
@@ -187,6 +206,7 @@ files:
|
|
187
206
|
- lib/roger/test.rb
|
188
207
|
- roger.gemspec
|
189
208
|
- test/Mockupfile-syntax.rb
|
209
|
+
- test/helpers/cli.rb
|
190
210
|
- test/project/.rvmrc
|
191
211
|
- test/project/Gemfile
|
192
212
|
- test/project/Gemfile.lock
|
@@ -222,6 +242,8 @@ files:
|
|
222
242
|
- test/project/partials/test/yield.html.erb
|
223
243
|
- test/project/partials2/partials2-test.html.erb
|
224
244
|
- test/unit/cli/cli_base_test.rb
|
245
|
+
- test/unit/cli/cli_generate_test.rb
|
246
|
+
- test/unit/cli/cli_serve_test.rb
|
225
247
|
- test/unit/cli/cli_test_test.rb
|
226
248
|
- test/unit/generators_test.rb
|
227
249
|
- test/unit/release/cleaner_test.rb
|
@@ -230,6 +252,7 @@ files:
|
|
230
252
|
- test/unit/release_test.rb
|
231
253
|
- test/unit/resolver_test.rb
|
232
254
|
- test/unit/template_test.rb
|
255
|
+
- test/unit/test_test.rb
|
233
256
|
homepage: http://github.com/digitpaint/roger
|
234
257
|
licenses:
|
235
258
|
- MIT
|
@@ -241,22 +264,23 @@ require_paths:
|
|
241
264
|
- lib
|
242
265
|
required_ruby_version: !ruby/object:Gem::Requirement
|
243
266
|
requirements:
|
244
|
-
- -
|
267
|
+
- - '>='
|
245
268
|
- !ruby/object:Gem::Version
|
246
269
|
version: '0'
|
247
270
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
248
271
|
requirements:
|
249
|
-
- -
|
272
|
+
- - '>='
|
250
273
|
- !ruby/object:Gem::Version
|
251
274
|
version: '0'
|
252
275
|
requirements: []
|
253
276
|
rubyforge_project:
|
254
|
-
rubygems_version: 2.
|
277
|
+
rubygems_version: 2.2.2
|
255
278
|
signing_key:
|
256
279
|
specification_version: 4
|
257
280
|
summary: Roger is a set of tools to create self-containing HTML mockups.
|
258
281
|
test_files:
|
259
282
|
- test/Mockupfile-syntax.rb
|
283
|
+
- test/helpers/cli.rb
|
260
284
|
- test/project/.rvmrc
|
261
285
|
- test/project/Gemfile
|
262
286
|
- test/project/Gemfile.lock
|
@@ -292,6 +316,8 @@ test_files:
|
|
292
316
|
- test/project/partials/test/yield.html.erb
|
293
317
|
- test/project/partials2/partials2-test.html.erb
|
294
318
|
- test/unit/cli/cli_base_test.rb
|
319
|
+
- test/unit/cli/cli_generate_test.rb
|
320
|
+
- test/unit/cli/cli_serve_test.rb
|
295
321
|
- test/unit/cli/cli_test_test.rb
|
296
322
|
- test/unit/generators_test.rb
|
297
323
|
- test/unit/release/cleaner_test.rb
|
@@ -300,3 +326,4 @@ test_files:
|
|
300
326
|
- test/unit/release_test.rb
|
301
327
|
- test/unit/resolver_test.rb
|
302
328
|
- test/unit/template_test.rb
|
329
|
+
- test/unit/test_test.rb
|