modular 0.2.1 → 0.2.2
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/.gitignore +1 -0
- data/Gemfile +1 -0
- data/lib/modular.rb +3 -14
- data/lib/modular/action_controller_extension.rb +16 -7
- data/lib/modular/components.rb +7 -4
- data/lib/modular/components/base.rb +75 -5
- data/lib/modular/components/container.rb +37 -11
- data/lib/modular/configuration.rb +8 -0
- data/lib/modular/creation.rb +20 -13
- data/lib/{generators → modular/generators}/component/USAGE +0 -0
- data/lib/modular/generators/component/component_generator.rb +18 -0
- data/lib/{generators → modular/generators}/component/templates/component.rb.erb +0 -0
- data/lib/{generators → modular/generators}/component/templates/template.erb +0 -0
- data/lib/modular/mst_rendering.rb +10 -0
- data/lib/modular/railtie.rb +4 -0
- data/lib/modular/rendering.rb +1 -42
- data/lib/modular/version.rb +1 -1
- data/spec/components/{base.rb → base_spec.rb} +12 -6
- data/spec/components/container_spec.rb +27 -0
- data/spec/components/{hello_world.rb → hello_world_spec.rb} +0 -0
- data/spec/components/{helpers_example.rb → helpers_example_spec.rb} +0 -0
- data/spec/components/spec/internal/log/test.log +0 -0
- data/spec/controllers/callback_layout_controller_spec.rb +4 -0
- data/spec/controllers/rendering_spec.rb +33 -0
- data/spec/internal/app/components/mustache_container.rb +5 -0
- data/spec/internal/app/components/mustached.rb +5 -0
- data/spec/internal/app/controllers/callback_layout_controller.rb +5 -5
- data/spec/internal/app/controllers/example_controller.rb +9 -1
- data/spec/internal/app/views/components/mustache_container.mst +3 -0
- data/spec/internal/app/views/components/mustached.mst +1 -0
- data/spec/internal/app/views/example/mustache.html.erb +1 -0
- data/spec/internal/app/views/example/mustache_nested.html.erb +1 -0
- data/spec/internal/config/initializers/modular.rb +11 -6
- data/spec/modular/configuration_spec.rb +6 -6
- data/spec/modular/creation_spec.rb +36 -5
- data/spec/modular/validation_spec.rb +115 -0
- data/templates/components/container.html.erb +7 -0
- data/templates/layout.erb +1 -3
- metadata +23 -47
- data/lib/generators/component/component_generator.rb +0 -16
- data/lib/modular/helpers.rb +0 -74
- data/modular-app/Gemfile +0 -20
- data/modular-app/Rakefile +0 -7
- data/modular-app/config.ru +0 -4
- data/modular-app/config/application.rb +0 -42
- data/modular-app/config/boot.rb +0 -6
- data/modular-app/config/database.yml +0 -22
- data/modular-app/config/environment.rb +0 -5
- data/modular-app/config/environments/development.rb +0 -26
- data/modular-app/config/environments/production.rb +0 -49
- data/modular-app/config/environments/test.rb +0 -35
- data/modular-app/config/initializers/backtrace_silencers.rb +0 -7
- data/modular-app/config/initializers/inflections.rb +0 -10
- data/modular-app/config/initializers/mime_types.rb +0 -5
- data/modular-app/config/initializers/secret_token.rb +0 -7
- data/modular-app/config/initializers/session_store.rb +0 -8
- data/modular-app/config/locales/en.yml +0 -5
- data/modular-app/config/routes.rb +0 -7
- data/modular-app/db/migrate/20110721090602_create_simple_models.rb +0 -12
- data/modular-app/db/schema.rb +0 -20
- data/modular-app/db/seeds.rb +0 -7
- data/modular-app/script/rails +0 -6
- data/modular-app/spec/spec_helper.rb +0 -27
- data/spec/components/container.rb +0 -34
- data/spec/components/validated.rb +0 -15
- data/spec/controllers/example_controller_spec.rb +0 -12
- data/spec/controllers/indirect_render_controller_spec.rb +0 -13
- data/spec/internal/app/components/heavy_task.rb +0 -8
- data/spec/internal/app/controllers/indirect_render_controller.rb +0 -7
- data/spec/internal/app/views/components/container.html.erb +0 -7
- data/spec/internal/app/views/components/heavy_task.html.erb +0 -1
- data/spec/internal/tmp/modular/cached_for_time.html.erb +0 -14
- data/spec/internal/tmp/modular/cached_forever.html.erb +0 -12
- data/spec/internal/tmp/modular/heavy.html.erb +0 -19
- data/spec/internal/tmp/modular/nested.html.erb +0 -28
- data/spec/views/indirect_render/index.html.erb_spec.rb +0 -4
data/lib/modular/version.rb
CHANGED
@@ -1,12 +1,18 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe Modular::Components::Base, ' as basic module' do
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
4
|
+
describe "should return type" do
|
5
|
+
it "in class" do
|
6
|
+
Modular::Components::Base.type.should === 'base'
|
7
|
+
end
|
8
|
+
|
9
|
+
it "in instance" do
|
10
|
+
Modular::Components::Base.new.type.should === 'base'
|
11
|
+
end
|
12
|
+
|
13
|
+
it "in multi-part name" do
|
14
|
+
FakeNewsFeed.type.should === 'fake_news_feed'
|
15
|
+
end
|
10
16
|
end
|
11
17
|
|
12
18
|
it "should serialize components correctly" do
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Modular::Components::Container, ' vertical container class ' do
|
4
|
+
before :each do
|
5
|
+
@cmp = described_class.new
|
6
|
+
end
|
7
|
+
|
8
|
+
it "should have children" do
|
9
|
+
@cmp.children.should be_a_kind_of Array
|
10
|
+
end
|
11
|
+
|
12
|
+
it "should have add_container and add_child methods" do
|
13
|
+
@cmp.add :container, :title => 'Test container title' do
|
14
|
+
add :FakeNewsFeed, :title => 'Worst news feed'
|
15
|
+
|
16
|
+
add :Vertical, :title => 'Vertical container'
|
17
|
+
end
|
18
|
+
|
19
|
+
@cmp.children[0].title.should == 'Test container title'
|
20
|
+
|
21
|
+
feed = @cmp.children[0].children[0]
|
22
|
+
feed.should be_a_kind_of FakeNewsFeed
|
23
|
+
feed.title.should == 'Worst news feed'
|
24
|
+
|
25
|
+
@cmp.children[0].children[1].should be_a_kind_of Vertical
|
26
|
+
end
|
27
|
+
end
|
File without changes
|
File without changes
|
File without changes
|
@@ -1,11 +1,15 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe CallbackLayoutController do
|
4
|
+
render_views
|
4
5
|
|
5
6
|
describe "GET 'index'" do
|
6
7
|
it "should be successful" do
|
7
8
|
get 'index'
|
8
9
|
response.should be_success
|
10
|
+
|
11
|
+
response.body.should contain 'Nested component'
|
12
|
+
response.body.should contain 'CallbackLayout#index'
|
9
13
|
end
|
10
14
|
end
|
11
15
|
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe ExampleController do
|
4
|
+
render_views
|
5
|
+
|
6
|
+
describe "straightforward rendering" do
|
7
|
+
it "should be successful" do
|
8
|
+
get 'index'
|
9
|
+
|
10
|
+
response.body.should contain 'Template - Best news feed'
|
11
|
+
response.body.should contain 'Find me in app/views/example/index.html.erb'
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
describe "mustache rendering" do
|
16
|
+
it "simple" do
|
17
|
+
get 'mustache'
|
18
|
+
response.should be_success
|
19
|
+
|
20
|
+
response.body.should contain 'Text in layout'
|
21
|
+
response.body.should contain 'Text from mustache template - Text from template settings'
|
22
|
+
end
|
23
|
+
|
24
|
+
it "nested" do
|
25
|
+
get 'mustache_nested'
|
26
|
+
response.should be_success
|
27
|
+
|
28
|
+
response.body.should contain 'Text from container settings - asdfgh'
|
29
|
+
response.body.should contain 'Text from mustache template - Text from template settings'
|
30
|
+
response.body.should contain 'Text from mustache template - Other text from template settings'
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
Text from mustache template - {{text}}
|
@@ -0,0 +1 @@
|
|
1
|
+
Text in template
|
@@ -0,0 +1 @@
|
|
1
|
+
Some text
|
@@ -1,5 +1,8 @@
|
|
1
1
|
Modular.configure do
|
2
|
-
register_layout :simple
|
2
|
+
register_layout :simple do
|
3
|
+
add Modular.create(:FakeNewsFeed, :news_count => 50, :title => 'Best news feed')
|
4
|
+
add :main_content
|
5
|
+
end
|
3
6
|
|
4
7
|
register_layout :nested do
|
5
8
|
add Modular.layout(:simple)
|
@@ -8,12 +11,14 @@ Modular.configure do
|
|
8
11
|
end
|
9
12
|
add :MainContent
|
10
13
|
end
|
11
|
-
|
12
|
-
register_layout :
|
13
|
-
|
14
|
-
|
14
|
+
|
15
|
+
register_layout :mustached, :mustached, :text => 'Text from template settings'
|
16
|
+
|
17
|
+
register_layout :mustache_nested, :mustache_container, :text => 'asdfgh' do
|
18
|
+
add Modular.layout(:mustached)
|
19
|
+
add :mustached, :text => 'Other text from template settings'
|
15
20
|
end
|
16
|
-
|
21
|
+
|
17
22
|
register_layout :cached_forever, Modular.create(:CachedForever)
|
18
23
|
|
19
24
|
register_layout :cached_for_time, Modular.create(:CachedForTime)
|
@@ -5,15 +5,15 @@ describe Modular::Configuration, ' as modular config' do
|
|
5
5
|
component = Modular.create :fake_news_feed, :news_count => 50, :title => 'Best news feed'
|
6
6
|
|
7
7
|
Modular.configure do
|
8
|
-
register_layout :
|
8
|
+
register_layout :testing_layout, component
|
9
9
|
end
|
10
10
|
|
11
|
-
Modular.layout(:
|
11
|
+
Modular.layout(:testing_layout).should == component
|
12
12
|
end
|
13
13
|
|
14
14
|
it "should have DSL for registering layout" do
|
15
15
|
Modular.configure do
|
16
|
-
register_layout :
|
16
|
+
register_layout :testing_layout do
|
17
17
|
add :fake_news_feed, :title => 'Best news feed'
|
18
18
|
add :fake_news_feed, :title => 'Just news feed'
|
19
19
|
|
@@ -23,15 +23,15 @@ describe Modular::Configuration, ' as modular config' do
|
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
|
-
l = Modular.layout(:
|
26
|
+
l = Modular.layout(:testing_layout)
|
27
27
|
|
28
28
|
l.should be_a_kind_of Modular::Components::Container
|
29
29
|
|
30
|
-
l.
|
30
|
+
l.children[0..1].each do |e|
|
31
31
|
e.should be_a_kind_of FakeNewsFeed
|
32
32
|
end
|
33
33
|
|
34
|
-
l.
|
34
|
+
l.children.length.should == 3
|
35
35
|
end
|
36
36
|
|
37
37
|
it "should return list of layouts" do
|
@@ -22,11 +22,42 @@ describe Modular, ' widgets creation ' do
|
|
22
22
|
Modular.create(widget).should eq(widget)
|
23
23
|
end
|
24
24
|
|
25
|
-
|
26
|
-
|
25
|
+
describe "creation from json" do
|
26
|
+
it "unserialized components" do
|
27
|
+
serialized = Modular.create(:fake_news_feed, :news_count => 50, :title => 'Best news feed').to_json
|
27
28
|
|
28
|
-
|
29
|
-
|
30
|
-
|
29
|
+
cmp_uns = Modular.from_json(serialized)
|
30
|
+
cmp_uns.news_count.to_i.should === 50
|
31
|
+
cmp_uns.title.should === 'Best news feed'
|
32
|
+
end
|
33
|
+
|
34
|
+
it "plain objects" do
|
35
|
+
data = '{
|
36
|
+
"type":"fake_news_feed",
|
37
|
+
"news_count":5
|
38
|
+
}'
|
39
|
+
|
40
|
+
feed = Modular.from_json(data)
|
41
|
+
feed.news_count.to_i.should == 5
|
42
|
+
feed.should be_a_kind_of FakeNewsFeed
|
43
|
+
end
|
44
|
+
|
45
|
+
it "component with children" do
|
46
|
+
data = '
|
47
|
+
{
|
48
|
+
"children":
|
49
|
+
[{
|
50
|
+
"type":"fake_news_feed",
|
51
|
+
"news_count":5
|
52
|
+
}],
|
53
|
+
"type":"container"
|
54
|
+
}'
|
55
|
+
|
56
|
+
c = Modular.from_json(data)
|
57
|
+
c.children.count.should == 1
|
58
|
+
feed = c.children.first
|
59
|
+
feed.news_count.to_i.should == 5
|
60
|
+
feed.should be_a_kind_of FakeNewsFeed
|
61
|
+
end
|
31
62
|
end
|
32
63
|
end
|
@@ -0,0 +1,115 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Modular, ' widgets validation ' do
|
4
|
+
it "should be valid if all is OK" do
|
5
|
+
widget = Modular.create'container',
|
6
|
+
children: [
|
7
|
+
type: 'fake_news_feed'
|
8
|
+
]
|
9
|
+
|
10
|
+
widget.invalid?.should be_false
|
11
|
+
widget.valid?.should be_true
|
12
|
+
|
13
|
+
widget.errors.to_a.should be_empty
|
14
|
+
end
|
15
|
+
|
16
|
+
it "should be invalid if component is not valid" do
|
17
|
+
widget = Modular.create('container', title: 'dsfghaskjfhagsdklfjhaflkasjhflkajshflkajdhfalkjhfaldkjhflkjasdhflkjahflkjsdhflkasdjfhaslkjfhasldkfjhaslkfjhaslkfjhaglkjfhlkjdfhglkjsdfhglkjsdfhgkjsdhglkajfhlkjsdfhlkasjdhflkasdjhfalksdjhflkasdjfhalskjfhaljkfhasldkfjhalskdf')
|
18
|
+
|
19
|
+
widget.invalid?.should be_true
|
20
|
+
widget.valid?.should be_false
|
21
|
+
|
22
|
+
widget.errors.to_a.should == ["Title is too long (maximum is 64 characters)"]
|
23
|
+
end
|
24
|
+
|
25
|
+
describe "children validation" do
|
26
|
+
before :each do
|
27
|
+
@widget = Modular.from_json type: 'container',
|
28
|
+
children: [
|
29
|
+
{
|
30
|
+
type: 'fake_news_feed',
|
31
|
+
title: 'dsfghaskjfhagsdklfjhaflkasjhflkajshflkajdhfalkjhfaldkjhflkjasdhflkjahflkjsdhflkasdjfhaslkjfhasldkfjhaslkfjhaslkfjhaglkjfhlkjdfhglkjsdfhglkjsdfhgkjsdhglkajfhlkjsdfhlkasjdhflkasdjhfalksdjhflkasdjfhalskjfhaljkfhasldkfjhalskdf'
|
32
|
+
},
|
33
|
+
{
|
34
|
+
type: 'validated'
|
35
|
+
}
|
36
|
+
]
|
37
|
+
end
|
38
|
+
|
39
|
+
it "should be valid if everything is ok" do
|
40
|
+
widget = Modular.from_json type: 'container',
|
41
|
+
children: [
|
42
|
+
{
|
43
|
+
type: 'fake_news_feed'
|
44
|
+
},
|
45
|
+
{
|
46
|
+
type: 'validated',
|
47
|
+
non_existant_property: 'something'
|
48
|
+
}
|
49
|
+
]
|
50
|
+
|
51
|
+
widget.invalid?.should be_false
|
52
|
+
widget.valid?.should be_true
|
53
|
+
end
|
54
|
+
|
55
|
+
it "should be invalid if has invalid children" do
|
56
|
+
@widget.invalid?.should be_true
|
57
|
+
@widget.valid?.should be_false
|
58
|
+
end
|
59
|
+
|
60
|
+
it "should return all errors for any widget" do
|
61
|
+
widget = Modular.from_json type: 'fake_news_feed', title: 'dsfghaskjfhagsdklfjhaflkasjhflkajshflkajdhfalkjhfaldkjhflkjasdhflkjahflkjsdhflkasdjfhaslkjfhasldkfjhaslkfjhaslkfjhaglkjfhlkjdfhglkjsdfhglkjsdfhgkjsdhglkajfhlkjsdfhlkasjdhflkasdjhfalksdjhflkasdjfhalskjfhaljkfhasldkfjhalskdf'
|
62
|
+
widget.all_errors.should == { '' => ["Title is too long (maximum is 64 characters)" ] }
|
63
|
+
end
|
64
|
+
|
65
|
+
it "should return all errors for children correctly if elemnts dont have uids" do
|
66
|
+
@widget.errors.to_a.should be_empty
|
67
|
+
@widget.all_errors.should == {
|
68
|
+
'' => ["Title is too long (maximum is 64 characters)", 'Non existant property can\'t be blank']
|
69
|
+
}
|
70
|
+
end
|
71
|
+
|
72
|
+
it "should return errors with uniqid" do
|
73
|
+
@widget.children.first.uniqid = 'first'
|
74
|
+
@widget.errors.to_a.should be_empty
|
75
|
+
@widget.all_errors.should == {
|
76
|
+
'first' => ["Title is too long (maximum is 64 characters)"],
|
77
|
+
'' => ['Non existant property can\'t be blank']
|
78
|
+
}
|
79
|
+
end
|
80
|
+
|
81
|
+
it "should return all errors with uids" do
|
82
|
+
widget = Modular.from_json type: 'container', uniqid: 'first',
|
83
|
+
children: [
|
84
|
+
{
|
85
|
+
uniqid: 'second',
|
86
|
+
type: 'fake_news_feed',
|
87
|
+
title: 'dsfghaskjfhagsdklfjhaflkasjhflkajshflkajdhfalkjhfaldkjhflkjasdhflkjahflkjsdhflkasdjfhaslkjfhasldkfjhaslkfjhaslkfjhaglkjfhlkjdfhglkjsdfhglkjsdfhgkjsdhglkajfhlkjsdfhlkasjdhflkasdjhfalksdjhflkasdjfhalskjfhaljkfhasldkfjhalskdf'
|
88
|
+
},
|
89
|
+
{
|
90
|
+
type: 'container',
|
91
|
+
uniqid: 'fourth',
|
92
|
+
title: 'dsfghaskjfhdfgsdfgsdgsdfsdfgsdfgsdfgsddgfdagsdklfjhaflkasjhflkajshflkajdhfalkjhfaldkjhflkjasdhflkjahflkjsdhflkasdjfhaslkjfhasldkfjhaslkfjhaslkfjhaglkjfhlkjdfhglkjsdfhglkjsdfhgkjsdhglkajfhlkjsdfhlkasjdhflkasdjhfalksdjhflkasdjfhalskjfhaljkfhasldkfjhalskdf',
|
93
|
+
children: [
|
94
|
+
{
|
95
|
+
uniqid: 'last',
|
96
|
+
type: 'fake_news_feed',
|
97
|
+
title: 'dsfghaskjfhagsdklfjhaflkasjhflkajshflkajdhfalkjhfaldkjhflkjasdhflkjahflkjsdhflkasdjfhaslkjfhasldkfjhaslkfjhaslkfjhaglkjfhlkjdfhglkjsdfhglkjsdfhgkjsdhglkajfhlkjsdfhlkasjdhflkasdjhfalksdjhflkasdjfhalskjfhaljkfhasldkfjhalskdf'
|
98
|
+
}
|
99
|
+
]
|
100
|
+
},
|
101
|
+
{
|
102
|
+
uniqid: 'third',
|
103
|
+
type: 'validated'
|
104
|
+
}
|
105
|
+
]
|
106
|
+
|
107
|
+
widget.all_errors.should == {
|
108
|
+
'second' => ["Title is too long (maximum is 64 characters)"],
|
109
|
+
'last' => ["Title is too long (maximum is 64 characters)"],
|
110
|
+
'fourth' => ["Title is too long (maximum is 64 characters)"],
|
111
|
+
'third' => ['Non existant property can\'t be blank']
|
112
|
+
}
|
113
|
+
end
|
114
|
+
end
|
115
|
+
end
|
data/templates/layout.erb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: modular
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-08-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -59,10 +59,6 @@ files:
|
|
59
59
|
- Rakefile
|
60
60
|
- TODO
|
61
61
|
- config.ru
|
62
|
-
- lib/generators/component/USAGE
|
63
|
-
- lib/generators/component/component_generator.rb
|
64
|
-
- lib/generators/component/templates/component.rb.erb
|
65
|
-
- lib/generators/component/templates/template.erb
|
66
62
|
- lib/modular.rb
|
67
63
|
- lib/modular/action_controller_extension.rb
|
68
64
|
- lib/modular/caching.rb
|
@@ -72,52 +68,34 @@ files:
|
|
72
68
|
- lib/modular/components/main_content.rb
|
73
69
|
- lib/modular/configuration.rb
|
74
70
|
- lib/modular/creation.rb
|
75
|
-
- lib/modular/
|
71
|
+
- lib/modular/generators/component/USAGE
|
72
|
+
- lib/modular/generators/component/component_generator.rb
|
73
|
+
- lib/modular/generators/component/templates/component.rb.erb
|
74
|
+
- lib/modular/generators/component/templates/template.erb
|
76
75
|
- lib/modular/layout_generator.rb
|
76
|
+
- lib/modular/mst_rendering.rb
|
77
77
|
- lib/modular/railtie.rb
|
78
78
|
- lib/modular/rendering.rb
|
79
79
|
- lib/modular/version.rb
|
80
|
-
- modular-app/Gemfile
|
81
|
-
- modular-app/Rakefile
|
82
|
-
- modular-app/config.ru
|
83
|
-
- modular-app/config/application.rb
|
84
|
-
- modular-app/config/boot.rb
|
85
|
-
- modular-app/config/database.yml
|
86
|
-
- modular-app/config/environment.rb
|
87
|
-
- modular-app/config/environments/development.rb
|
88
|
-
- modular-app/config/environments/production.rb
|
89
|
-
- modular-app/config/environments/test.rb
|
90
|
-
- modular-app/config/initializers/backtrace_silencers.rb
|
91
|
-
- modular-app/config/initializers/inflections.rb
|
92
|
-
- modular-app/config/initializers/mime_types.rb
|
93
|
-
- modular-app/config/initializers/secret_token.rb
|
94
|
-
- modular-app/config/initializers/session_store.rb
|
95
|
-
- modular-app/config/locales/en.yml
|
96
|
-
- modular-app/config/routes.rb
|
97
|
-
- modular-app/db/migrate/20110721090602_create_simple_models.rb
|
98
|
-
- modular-app/db/schema.rb
|
99
|
-
- modular-app/db/seeds.rb
|
100
|
-
- modular-app/script/rails
|
101
|
-
- modular-app/spec/spec_helper.rb
|
102
80
|
- modular.gemspec
|
103
|
-
- spec/components/
|
104
|
-
- spec/components/
|
105
|
-
- spec/components/
|
106
|
-
- spec/components/
|
107
|
-
- spec/components/
|
81
|
+
- spec/components/base_spec.rb
|
82
|
+
- spec/components/container_spec.rb
|
83
|
+
- spec/components/hello_world_spec.rb
|
84
|
+
- spec/components/helpers_example_spec.rb
|
85
|
+
- spec/components/spec/internal/log/test.log
|
108
86
|
- spec/controllers/cached_for_time_controller_spec.rb
|
109
87
|
- spec/controllers/cached_forever_controller_spec.rb
|
110
88
|
- spec/controllers/callback_layout_controller_spec.rb
|
111
|
-
- spec/controllers/example_controller_spec.rb
|
112
|
-
- spec/controllers/indirect_render_controller_spec.rb
|
113
89
|
- spec/controllers/layout_test_controller_spec.rb
|
90
|
+
- spec/controllers/rendering_spec.rb
|
114
91
|
- spec/internal/app/components/cached_for_time.rb
|
115
92
|
- spec/internal/app/components/cached_forever.rb
|
116
93
|
- spec/internal/app/components/fake_news_feed.rb
|
117
94
|
- spec/internal/app/components/foobar.rb
|
118
|
-
- spec/internal/app/components/heavy_task.rb
|
119
95
|
- spec/internal/app/components/hello_world.rb
|
120
96
|
- spec/internal/app/components/helpers_example.rb
|
97
|
+
- spec/internal/app/components/mustache_container.rb
|
98
|
+
- spec/internal/app/components/mustached.rb
|
121
99
|
- spec/internal/app/components/validated.rb
|
122
100
|
- spec/internal/app/components/vertical.rb
|
123
101
|
- spec/internal/app/controllers/application_controller.rb
|
@@ -125,7 +103,6 @@ files:
|
|
125
103
|
- spec/internal/app/controllers/cached_forever_controller.rb
|
126
104
|
- spec/internal/app/controllers/callback_layout_controller.rb
|
127
105
|
- spec/internal/app/controllers/example_controller.rb
|
128
|
-
- spec/internal/app/controllers/indirect_render_controller.rb
|
129
106
|
- spec/internal/app/controllers/layout_test_controller.rb
|
130
107
|
- spec/internal/app/models/simple_model.rb
|
131
108
|
- spec/internal/app/views/cached_for_time/index.html.erb
|
@@ -133,15 +110,17 @@ files:
|
|
133
110
|
- spec/internal/app/views/callback_layout/index.html.erb
|
134
111
|
- spec/internal/app/views/components/cached_for_time.html.erb
|
135
112
|
- spec/internal/app/views/components/cached_forever.html.erb
|
136
|
-
- spec/internal/app/views/components/container.html.erb
|
137
113
|
- spec/internal/app/views/components/fake_news_feed.html.erb
|
138
114
|
- spec/internal/app/views/components/foobar.html.erb
|
139
|
-
- spec/internal/app/views/components/heavy_task.html.erb
|
140
115
|
- spec/internal/app/views/components/hello_world.html.erb
|
141
116
|
- spec/internal/app/views/components/helpers_example.html.erb
|
117
|
+
- spec/internal/app/views/components/mustache_container.mst
|
118
|
+
- spec/internal/app/views/components/mustached.mst
|
142
119
|
- spec/internal/app/views/components/validated.html.erb
|
143
120
|
- spec/internal/app/views/components/vertical.html.erb
|
144
121
|
- spec/internal/app/views/example/index.html.erb
|
122
|
+
- spec/internal/app/views/example/mustache.html.erb
|
123
|
+
- spec/internal/app/views/example/mustache_nested.html.erb
|
145
124
|
- spec/internal/app/views/indirect_render/index.html.erb
|
146
125
|
- spec/internal/app/views/layout_test/index.html.erb
|
147
126
|
- spec/internal/app/views/layouts/application.html.erb
|
@@ -152,14 +131,11 @@ files:
|
|
152
131
|
- spec/internal/log/.gitignore
|
153
132
|
- spec/internal/public/favicon.ico
|
154
133
|
- spec/internal/tmp/.gitkeep
|
155
|
-
- spec/internal/tmp/modular/cached_for_time.html.erb
|
156
|
-
- spec/internal/tmp/modular/cached_forever.html.erb
|
157
|
-
- spec/internal/tmp/modular/heavy.html.erb
|
158
|
-
- spec/internal/tmp/modular/nested.html.erb
|
159
134
|
- spec/modular/configuration_spec.rb
|
160
135
|
- spec/modular/creation_spec.rb
|
136
|
+
- spec/modular/validation_spec.rb
|
161
137
|
- spec/spec_helper.rb
|
162
|
-
-
|
138
|
+
- templates/components/container.html.erb
|
163
139
|
- templates/layout.erb
|
164
140
|
homepage: https://github.com/brain-geek/modular
|
165
141
|
licenses: []
|
@@ -175,7 +151,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
175
151
|
version: '0'
|
176
152
|
segments:
|
177
153
|
- 0
|
178
|
-
hash:
|
154
|
+
hash: -3892738958547389268
|
179
155
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
180
156
|
none: false
|
181
157
|
requirements:
|
@@ -184,7 +160,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
184
160
|
version: '0'
|
185
161
|
segments:
|
186
162
|
- 0
|
187
|
-
hash:
|
163
|
+
hash: -3892738958547389268
|
188
164
|
requirements: []
|
189
165
|
rubyforge_project: modular
|
190
166
|
rubygems_version: 1.8.22
|