volt 0.9.2 → 0.9.3.pre1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -0
- data/CONTRIBUTING.md +4 -0
- data/Gemfile +3 -0
- data/app/volt/assets/js/volt_js_polyfills.js +0 -1
- data/app/volt/assets/js/volt_watch.js +217 -0
- data/app/volt/models/user.rb +7 -2
- data/app/volt/tasks/query_tasks.rb +6 -0
- data/lib/volt/boot.rb +1 -1
- data/lib/volt/cli/generate.rb +1 -1
- data/lib/volt/config.rb +12 -2
- data/lib/volt/controllers/model_controller.rb +1 -1
- data/lib/volt/data_stores/base_adaptor_client.rb +34 -0
- data/lib/volt/data_stores/{base.rb → base_adaptor_server.rb} +1 -1
- data/lib/volt/data_stores/data_store.rb +23 -7
- data/lib/volt/models/array_model.rb +3 -2
- data/lib/volt/models/model.rb +29 -91
- data/lib/volt/models/{dirty.rb → model_helpers/dirty.rb} +0 -0
- data/lib/volt/models/{listener_tracker.rb → model_helpers/listener_tracker.rb} +0 -0
- data/lib/volt/models/model_helpers/model_change_helpers.rb +76 -0
- data/lib/volt/models/{model_helpers.rb → model_helpers/model_helpers.rb} +0 -0
- data/lib/volt/models/persistors/array_store.rb +2 -23
- data/lib/volt/models/persistors/query/normalizer.rb +0 -44
- data/{templates/project/lib/.empty_directory → lib/volt/models/validations/errors.rb} +0 -0
- data/lib/volt/models/{validations.rb → validations/validations.rb} +80 -26
- data/lib/volt/page/bindings/attribute_binding.rb +17 -3
- data/lib/volt/page/page.rb +1 -0
- data/lib/volt/reactive/eventable.rb +1 -0
- data/lib/volt/server.rb +2 -1
- data/lib/volt/server/component_templates.rb +66 -16
- data/lib/volt/server/forking_server.rb +16 -14
- data/lib/volt/server/html_parser/sandlebars_parser.rb +2 -0
- data/lib/volt/server/html_parser/view_scope.rb +2 -0
- data/lib/volt/server/rack/component_paths.rb +4 -2
- data/lib/volt/server/rack/opal_files.rb +4 -2
- data/lib/volt/server/socket_connection_handler.rb +5 -1
- data/lib/volt/server/template_handlers/handlers.rb +0 -0
- data/lib/volt/spec/setup.rb +23 -8
- data/lib/volt/tasks/dispatcher.rb +4 -0
- data/lib/volt/utils/promise_patch.rb +3 -0
- data/lib/volt/version.rb +1 -1
- data/spec/apps/kitchen_sink/Gemfile +5 -0
- data/spec/apps/kitchen_sink/app/main/config/routes.rb +1 -0
- data/spec/apps/kitchen_sink/app/main/controllers/main_controller.rb +10 -0
- data/spec/apps/kitchen_sink/app/main/views/main/bindings.html +20 -0
- data/spec/apps/kitchen_sink/app/main/views/main/form.html +73 -0
- data/spec/apps/kitchen_sink/app/main/views/main/main.html +1 -0
- data/spec/integration/bindings_spec.rb +33 -0
- data/spec/integration/user_spec.rb +51 -21
- data/spec/models/associations_spec.rb +8 -0
- data/spec/models/model_spec.rb +7 -0
- data/spec/models/user_spec.rb +20 -0
- data/spec/models/validations_spec.rb +2 -1
- data/spec/models/validators/block_validations_spec.rb +53 -0
- data/spec/page/bindings/template_binding/view_lookup_for_path_spec.rb +10 -0
- data/spec/page/path_string_renderer_spec.rb +6 -0
- data/spec/reactive/eventable_spec.rb +24 -6
- data/spec/server/component_templates_spec.rb +21 -0
- data/spec/server/html_parser/sandlebars_parser_spec.rb +12 -13
- data/spec/server/html_parser/view_parser_spec.rb +3 -0
- data/spec/server/rack/asset_files_spec.rb +2 -2
- data/spec/server/rack/http_resource_spec.rb +10 -0
- data/spec/tasks/dispatcher_spec.rb +5 -0
- data/spec/tasks/user_tasks_spec.rb +59 -0
- data/spec/utils/task_argument_filtererer_spec.rb +6 -0
- data/templates/newgem/app/newgem/config/initializers/boot.rb +10 -0
- data/templates/newgem/lib/newgem.rb.tt +13 -0
- data/templates/project/Gemfile.tt +3 -0
- data/templates/project/app/main/lib/.empty_directory +0 -0
- data/volt.gemspec +3 -1
- metadata +24 -25
- data/lib/volt/data_stores/mongo_driver.rb +0 -69
@@ -0,0 +1,21 @@
|
|
1
|
+
if RUBY_PLATFORM == 'opal'
|
2
|
+
else
|
3
|
+
require 'spec_helper'
|
4
|
+
require 'benchmark'
|
5
|
+
require 'volt/server/component_templates'
|
6
|
+
|
7
|
+
describe Volt::ComponentTemplates do
|
8
|
+
let(:haml_handler) do
|
9
|
+
double(:haml_handler)
|
10
|
+
end
|
11
|
+
|
12
|
+
it 'can be extended' do
|
13
|
+
expect( Volt::ComponentTemplates::Handlers.extensions ).to eq([ :html, :email ])
|
14
|
+
|
15
|
+
Volt::ComponentTemplates.register_template_handler(:haml, haml_handler)
|
16
|
+
|
17
|
+
expect( Volt::ComponentTemplates::Handlers.extensions ).to eq([ :html, :email, :haml ])
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
@@ -20,7 +20,7 @@ class HTMLHandler
|
|
20
20
|
end
|
21
21
|
|
22
22
|
def binding(binding)
|
23
|
-
@html << "{#{binding}}"
|
23
|
+
@html << "{{#{binding}}}"
|
24
24
|
end
|
25
25
|
|
26
26
|
def start_tag(tag_name, attributes, unary)
|
@@ -94,12 +94,13 @@ describe Volt::SandlebarsParser do
|
|
94
94
|
end
|
95
95
|
|
96
96
|
it 'should handle bindings' do
|
97
|
-
html = '<p>some cool {text} is {awesome}</p>'
|
97
|
+
html = '<p>some cool {{ text }} is {{ awesome }}</p>'
|
98
|
+
match = '<p>some cool {{text}} is {{awesome}}</p>'
|
98
99
|
test_html(html)
|
99
100
|
end
|
100
101
|
|
101
|
-
it 'should handle bindings with nested {
|
102
|
-
html = "<p>testing with {nested { 'binding stuff' }}</p>"
|
102
|
+
it 'should handle bindings with nested {{and}}' do
|
103
|
+
html = "<p>testing with {{nested {{ 'binding stuff' }} }}</p>"
|
103
104
|
test_html(html)
|
104
105
|
end
|
105
106
|
|
@@ -139,7 +140,7 @@ describe Volt::SandlebarsParser do
|
|
139
140
|
end
|
140
141
|
|
141
142
|
it 'should not jump bindings' do
|
142
|
-
html = '<p>{some} text {binding}</p>'
|
143
|
+
html = '<p>{{ some }} text {{ binding }}</p>'
|
143
144
|
test_html(html)
|
144
145
|
end
|
145
146
|
|
@@ -150,8 +151,8 @@ describe Volt::SandlebarsParser do
|
|
150
151
|
end
|
151
152
|
|
152
153
|
it 'should let you escape { and }' do
|
153
|
-
html = 'should escape {{{{}}} and {{{}}}}'
|
154
|
-
match = 'should escape { and }'
|
154
|
+
html = 'should escape {{{{{}}} and {{{}}}}}'
|
155
|
+
match = 'should escape {{ and }}'
|
155
156
|
test_html(html, match)
|
156
157
|
end
|
157
158
|
|
@@ -191,11 +192,9 @@ describe Volt::SandlebarsParser do
|
|
191
192
|
test_html(html)
|
192
193
|
end
|
193
194
|
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
# expect { Volt::SandlebarsParser.new(html, handler) }.to raise_error(Volt::HTMLParseError)
|
199
|
-
# end
|
195
|
+
it 'should close self closing elements' do
|
196
|
+
test_html '<p><p>', '<p></p><p></p>'
|
197
|
+
test_html '<p><span>1</span>2<p>3</p>', '<p><span>1</span>2</p><p>3</p>'
|
198
|
+
end
|
200
199
|
end
|
201
200
|
end
|
@@ -192,6 +192,9 @@ describe Volt::ViewParser do
|
|
192
192
|
END
|
193
193
|
|
194
194
|
view = Volt::ViewParser.new(html, 'main/main/main/body')
|
195
|
+
|
196
|
+
expected = " <a href=\"{link_name}\">Link</a>\n"
|
197
|
+
expect(view.templates["main/main/main/body/body"]["html"]).to eq expected
|
195
198
|
end
|
196
199
|
|
197
200
|
it 'should parse components' do
|
@@ -13,13 +13,13 @@ if RUBY_PLATFORM != 'opal'
|
|
13
13
|
main = Volt::AssetFiles.new('main', @component_paths)
|
14
14
|
|
15
15
|
components = main.components
|
16
|
-
expect(components).to eq(%w(volt main shared bootstrap slideshow))
|
16
|
+
expect(components).to eq(%w(volt mongo main shared bootstrap slideshow))
|
17
17
|
end
|
18
18
|
|
19
19
|
it 'should list all JS files' do
|
20
20
|
main = Volt::AssetFiles.new('main', @component_paths)
|
21
21
|
|
22
|
-
expect(main.javascript_files(nil)).to eq(['/assets/js/jquery-2.0.3.js', '/assets/js/volt_js_polyfills.js', '/assets/js/bootstrap.js', '/assets/js/test2.js', '/assets/js/test3.js', '/assets/js/test1.js', '/assets/volt/page/page.js', '/components/main.js'])
|
22
|
+
expect(main.javascript_files(nil)).to eq(['/assets/js/jquery-2.0.3.js', '/assets/js/volt_js_polyfills.js', '/assets/js/volt_watch.js', '/assets/js/bootstrap.js', '/assets/js/test2.js', '/assets/js/test3.js', '/assets/js/test1.js', '/assets/volt/page/page.js', '/components/main.js'])
|
23
23
|
end
|
24
24
|
|
25
25
|
it 'should raise an exception for a missing component gem' do
|
@@ -55,5 +55,15 @@ if RUBY_PLATFORM != 'opal'
|
|
55
55
|
expect(response.status).to eq(200)
|
56
56
|
expect(response.body).to eq(['show with id 99 and another_param called'])
|
57
57
|
end
|
58
|
+
|
59
|
+
it 'should call the supplied app if routes are not matched and cause a 404' do
|
60
|
+
http_resource = Volt::HttpResource.new(app, @routes)
|
61
|
+
env = Rack::MockRequest.env_for('http://example.com/not_a_valid_param')
|
62
|
+
request = Volt::HttpRequest.new(env)
|
63
|
+
response = http_resource.call(env)
|
64
|
+
expect(response[0]).to eq(404)
|
65
|
+
#expect(response.body).to eq(['show with id 99 and another_param called'])
|
66
|
+
end
|
67
|
+
|
58
68
|
end
|
59
69
|
end
|
@@ -10,6 +10,11 @@ if RUBY_PLATFORM != 'opal'
|
|
10
10
|
Volt.logger = spy('Volt::VoltLogger')
|
11
11
|
end
|
12
12
|
|
13
|
+
after do
|
14
|
+
# Cleanup, make volt make a new logger. Otherwise this will leak out.
|
15
|
+
Volt.logger = nil
|
16
|
+
end
|
17
|
+
|
13
18
|
it 'should only allow method calls on Task or above in the inheritance chain' do
|
14
19
|
channel = double('channel')
|
15
20
|
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
if RUBY_PLATFORM != 'opal'
|
4
|
+
describe UserTasks do
|
5
|
+
let(:fake_response) { double('FakeResponse', fetch_first: true) }
|
6
|
+
|
7
|
+
let(:fake_users_collection) do
|
8
|
+
double('FakeUsersCollection', where: fake_response)
|
9
|
+
end
|
10
|
+
|
11
|
+
let(:fake_store) { double('FakeStore', :_users => fake_users_collection) }
|
12
|
+
|
13
|
+
let(:login_info) { { 'login' => 'Marty', 'password' => 'McFly' } }
|
14
|
+
|
15
|
+
before do
|
16
|
+
allow($page).to receive(:store).and_return fake_store
|
17
|
+
allow(User).to receive(:login_field).and_return 'user'
|
18
|
+
allow(fake_response).to receive(:fetch_first).and_yield(user)
|
19
|
+
end
|
20
|
+
|
21
|
+
describe '#login' do
|
22
|
+
context 'with no matching user' do
|
23
|
+
let(:user) { false }
|
24
|
+
|
25
|
+
it 'raises VoltUserError' do
|
26
|
+
expect { subject.login(login_info) }.
|
27
|
+
to raise_error('User could not be found')
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
context 'with a matching user' do
|
32
|
+
let(:password) { BCrypt::Password.create(login_info['password']) }
|
33
|
+
let(:user) { double('User', _id: 1, _hashed_password: password) }
|
34
|
+
|
35
|
+
it 'fails on bad password' do
|
36
|
+
expect { subject.login(login_info.merge 'password' => 'Not McFly') }.
|
37
|
+
to raise_error('Password did not match')
|
38
|
+
end
|
39
|
+
|
40
|
+
it 'fails with missing app_secret' do
|
41
|
+
allow(Volt.config).to receive(:app_secret).and_return false
|
42
|
+
|
43
|
+
expect { subject.login(login_info) }.
|
44
|
+
to raise_error('app_secret is not configured')
|
45
|
+
end
|
46
|
+
|
47
|
+
it 'generates a signature digest' do
|
48
|
+
allow(Digest::SHA256).to receive(:hexdigest).and_call_original
|
49
|
+
|
50
|
+
subject.login(login_info)
|
51
|
+
|
52
|
+
expect(Digest::SHA256).to have_received(:hexdigest).with(
|
53
|
+
"#{Volt.config.app_secret}::#{user._id}"
|
54
|
+
)
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
@@ -13,5 +13,11 @@ if RUBY_PLATFORM != 'opal'
|
|
13
13
|
|
14
14
|
expect(filtered_args).to eq([:login, { login: 'jim@jim.com', password: '[FILTERED]' }])
|
15
15
|
end
|
16
|
+
|
17
|
+
it 'should create and run a new TaskArgumentFilterer when its filter method is called' do
|
18
|
+
filtered_args = TaskArgumentFilterer.filter([{login: 'jam@jam.com', password: 'some password'}])
|
19
|
+
expect(filtered_args).to eq([{:login=>"jam@jam.com", :password=>"[FILTERED]"}])
|
20
|
+
end
|
21
|
+
|
16
22
|
end
|
17
23
|
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
# Place any code you want to run when the component is included on the client
|
2
|
+
# or server.
|
3
|
+
|
4
|
+
# To include code only on the client use:
|
5
|
+
# if RUBY_PLATFORM == 'opal'
|
6
|
+
#
|
7
|
+
# To include code only on the server, use:
|
8
|
+
# unless RUBY_PLATFORM == 'opal'
|
9
|
+
# ^^ this will not send compile in code in the conditional to the client.
|
10
|
+
# ^^ this include code required in the conditional.
|
@@ -1,3 +1,16 @@
|
|
1
|
+
# If you need to require in code in the gem's app folder, keep in mind that
|
2
|
+
# the app is not on the load path when the gem is required. Use
|
3
|
+
# app/{gemname}/config/initializers/boot.rb to require in client or server
|
4
|
+
# code.
|
5
|
+
#
|
6
|
+
# Also, in volt apps, you typically use the lib folder in the
|
7
|
+
# app/{componentname} folder instead of this lib folder. This lib folder is
|
8
|
+
# for setting up gem code when Bundler.require is called. (or the gem is
|
9
|
+
# required.)
|
10
|
+
#
|
11
|
+
# If you need to configure volt in some way, you can add a Volt.configure block
|
12
|
+
# in this file.
|
13
|
+
|
1
14
|
<%- config[:constant_array].each_with_index do |c,i| -%>
|
2
15
|
<%= ' '*i %>module <%= c %>
|
3
16
|
<%- end -%>
|
File without changes
|
data/volt.gemspec
CHANGED
@@ -24,7 +24,6 @@ Gem::Specification.new do |spec|
|
|
24
24
|
spec.add_dependency 'rack', '~> 1.5.0'
|
25
25
|
spec.add_dependency 'sprockets-sass', '~> 1.0.0'
|
26
26
|
spec.add_dependency 'sass', '~> 3.2.5'
|
27
|
-
spec.add_dependency 'mongo', '~> 1.9.0'
|
28
27
|
spec.add_dependency 'listen', '~> 2.8.0'
|
29
28
|
spec.add_dependency 'uglifier', '>= 2.4.0'
|
30
29
|
spec.add_dependency 'configurations', '~> 2.0.0.pre'
|
@@ -34,6 +33,7 @@ Gem::Specification.new do |spec|
|
|
34
33
|
spec.add_dependency 'faye-websocket', '~> 0.9.2'
|
35
34
|
spec.add_dependency 'concurrent-ruby', '~> 0.8.0'
|
36
35
|
|
36
|
+
|
37
37
|
# For user passwords
|
38
38
|
spec.add_dependency 'bcrypt', '~> 3.1.9'
|
39
39
|
|
@@ -41,6 +41,8 @@ Gem::Specification.new do |spec|
|
|
41
41
|
spec.add_development_dependency 'rspec', '~> 3.2.0'
|
42
42
|
spec.add_development_dependency 'opal-rspec', '~> 0.4.2'
|
43
43
|
spec.add_development_dependency 'capybara', '~> 2.4.2'
|
44
|
+
|
45
|
+
# There is a big performance issue with selenium-webdriver on v2.45.0
|
44
46
|
spec.add_development_dependency 'selenium-webdriver', '~> 2.43.0'
|
45
47
|
spec.add_development_dependency 'chromedriver2-helper', '~> 0.0.8'
|
46
48
|
spec.add_development_dependency 'poltergeist', '~> 1.5.0'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: volt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.3.pre1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryan Stout
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-05-
|
11
|
+
date: 2015-05-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -80,20 +80,6 @@ dependencies:
|
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: 3.2.5
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: mongo
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - "~>"
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: 1.9.0
|
90
|
-
type: :runtime
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - "~>"
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: 1.9.0
|
97
83
|
- !ruby/object:Gem::Dependency
|
98
84
|
name: listen
|
99
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -496,6 +482,7 @@ files:
|
|
496
482
|
- app/volt/assets/css/notices.css.scss
|
497
483
|
- app/volt/assets/js/jquery-2.0.3.js
|
498
484
|
- app/volt/assets/js/volt_js_polyfills.js
|
485
|
+
- app/volt/assets/js/volt_watch.js
|
499
486
|
- app/volt/config/dependencies.rb
|
500
487
|
- app/volt/controllers/notices_controller.rb
|
501
488
|
- app/volt/models/user.rb
|
@@ -523,9 +510,9 @@ files:
|
|
523
510
|
- lib/volt/controllers/actions.rb
|
524
511
|
- lib/volt/controllers/http_controller.rb
|
525
512
|
- lib/volt/controllers/model_controller.rb
|
526
|
-
- lib/volt/data_stores/
|
513
|
+
- lib/volt/data_stores/base_adaptor_client.rb
|
514
|
+
- lib/volt/data_stores/base_adaptor_server.rb
|
527
515
|
- lib/volt/data_stores/data_store.rb
|
528
|
-
- lib/volt/data_stores/mongo_driver.rb
|
529
516
|
- lib/volt/extra_core/array.rb
|
530
517
|
- lib/volt/extra_core/blank.rb
|
531
518
|
- lib/volt/extra_core/class.rb
|
@@ -545,14 +532,15 @@ files:
|
|
545
532
|
- lib/volt/models/associations.rb
|
546
533
|
- lib/volt/models/buffer.rb
|
547
534
|
- lib/volt/models/cursor.rb
|
548
|
-
- lib/volt/models/dirty.rb
|
549
535
|
- lib/volt/models/errors.rb
|
550
536
|
- lib/volt/models/field_helpers.rb
|
551
|
-
- lib/volt/models/listener_tracker.rb
|
552
537
|
- lib/volt/models/location.rb
|
553
538
|
- lib/volt/models/model.rb
|
554
539
|
- lib/volt/models/model_hash_behaviour.rb
|
555
|
-
- lib/volt/models/model_helpers.rb
|
540
|
+
- lib/volt/models/model_helpers/dirty.rb
|
541
|
+
- lib/volt/models/model_helpers/listener_tracker.rb
|
542
|
+
- lib/volt/models/model_helpers/model_change_helpers.rb
|
543
|
+
- lib/volt/models/model_helpers/model_helpers.rb
|
556
544
|
- lib/volt/models/model_wrapper.rb
|
557
545
|
- lib/volt/models/permissions.rb
|
558
546
|
- lib/volt/models/persistors/array_store.rb
|
@@ -572,7 +560,8 @@ files:
|
|
572
560
|
- lib/volt/models/state_helpers.rb
|
573
561
|
- lib/volt/models/state_manager.rb
|
574
562
|
- lib/volt/models/url.rb
|
575
|
-
- lib/volt/models/validations.rb
|
563
|
+
- lib/volt/models/validations/errors.rb
|
564
|
+
- lib/volt/models/validations/validations.rb
|
576
565
|
- lib/volt/models/validators/email_validator.rb
|
577
566
|
- lib/volt/models/validators/format_validator.rb
|
578
567
|
- lib/volt/models/validators/length_validator.rb
|
@@ -651,6 +640,7 @@ files:
|
|
651
640
|
- lib/volt/server/rack/source_map_server.rb
|
652
641
|
- lib/volt/server/socket_connection_handler.rb
|
653
642
|
- lib/volt/server/socket_connection_handler_stub.rb
|
643
|
+
- lib/volt/server/template_handlers/handlers.rb
|
654
644
|
- lib/volt/server/websocket/rack_server_adaptor.rb
|
655
645
|
- lib/volt/server/websocket/websocket_handler.rb
|
656
646
|
- lib/volt/spec/capybara.rb
|
@@ -702,6 +692,7 @@ files:
|
|
702
692
|
- spec/apps/kitchen_sink/app/main/views/main/cookie_test.html
|
703
693
|
- spec/apps/kitchen_sink/app/main/views/main/first_last.html
|
704
694
|
- spec/apps/kitchen_sink/app/main/views/main/flash.html
|
695
|
+
- spec/apps/kitchen_sink/app/main/views/main/form.html
|
705
696
|
- spec/apps/kitchen_sink/app/main/views/main/html_safe.html
|
706
697
|
- spec/apps/kitchen_sink/app/main/views/main/index.html
|
707
698
|
- spec/apps/kitchen_sink/app/main/views/main/main.html
|
@@ -756,6 +747,7 @@ files:
|
|
756
747
|
- spec/models/user_spec.rb
|
757
748
|
- spec/models/user_validation_spec.rb
|
758
749
|
- spec/models/validations_spec.rb
|
750
|
+
- spec/models/validators/block_validations_spec.rb
|
759
751
|
- spec/models/validators/email_validator_spec.rb
|
760
752
|
- spec/models/validators/format_validator_spec.rb
|
761
753
|
- spec/models/validators/length_validator_spec.rb
|
@@ -774,6 +766,7 @@ files:
|
|
774
766
|
- spec/reactive/reactive_array_spec.rb
|
775
767
|
- spec/reactive/reactive_hash_spec.rb
|
776
768
|
- spec/router/routes_spec.rb
|
769
|
+
- spec/server/component_templates_spec.rb
|
777
770
|
- spec/server/html_parser/sample_page.html
|
778
771
|
- spec/server/html_parser/sandlebars_parser_spec.rb
|
779
772
|
- spec/server/html_parser/view_handler_spec.rb
|
@@ -792,6 +785,7 @@ files:
|
|
792
785
|
- spec/tasks/live_query_spec.rb
|
793
786
|
- spec/tasks/query_tasks.rb
|
794
787
|
- spec/tasks/query_tracker_spec.rb
|
788
|
+
- spec/tasks/user_tasks_spec.rb
|
795
789
|
- spec/templates/targets/binding_document/component_node_spec.rb
|
796
790
|
- spec/utils/generic_counting_pool_spec.rb
|
797
791
|
- spec/utils/generic_pool_spec.rb
|
@@ -826,6 +820,7 @@ files:
|
|
826
820
|
- templates/newgem/app/newgem/assets/css/.empty_directory
|
827
821
|
- templates/newgem/app/newgem/assets/js/.empty_directory
|
828
822
|
- templates/newgem/app/newgem/config/dependencies.rb
|
823
|
+
- templates/newgem/app/newgem/config/initializers/boot.rb
|
829
824
|
- templates/newgem/app/newgem/config/routes.rb
|
830
825
|
- templates/newgem/app/newgem/controllers/main_controller.rb.tt
|
831
826
|
- templates/newgem/app/newgem/controllers/server/.empty_directory
|
@@ -853,6 +848,7 @@ files:
|
|
853
848
|
- templates/project/app/main/config/dependencies.rb
|
854
849
|
- templates/project/app/main/config/routes.rb
|
855
850
|
- templates/project/app/main/controllers/main_controller.rb
|
851
|
+
- templates/project/app/main/lib/.empty_directory
|
856
852
|
- templates/project/app/main/models/.empty_directory
|
857
853
|
- templates/project/app/main/models/user.rb
|
858
854
|
- templates/project/app/main/tasks/.empty_directory
|
@@ -863,7 +859,6 @@ files:
|
|
863
859
|
- templates/project/config/app.rb.tt
|
864
860
|
- templates/project/config/base/index.html
|
865
861
|
- templates/project/config/initializers/.empty_directory
|
866
|
-
- templates/project/lib/.empty_directory
|
867
862
|
- templates/project/spec/app/main/controllers/server/sample_http_controller_spec.rb
|
868
863
|
- templates/project/spec/app/main/integration/sample_integration_spec.rb
|
869
864
|
- templates/project/spec/app/main/models/sample_model_spec.rb
|
@@ -888,9 +883,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
888
883
|
version: '2.1'
|
889
884
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
890
885
|
requirements:
|
891
|
-
- - "
|
886
|
+
- - ">"
|
892
887
|
- !ruby/object:Gem::Version
|
893
|
-
version:
|
888
|
+
version: 1.3.1
|
894
889
|
requirements: []
|
895
890
|
rubyforge_project:
|
896
891
|
rubygems_version: 2.4.5
|
@@ -921,6 +916,7 @@ test_files:
|
|
921
916
|
- spec/apps/kitchen_sink/app/main/views/main/cookie_test.html
|
922
917
|
- spec/apps/kitchen_sink/app/main/views/main/first_last.html
|
923
918
|
- spec/apps/kitchen_sink/app/main/views/main/flash.html
|
919
|
+
- spec/apps/kitchen_sink/app/main/views/main/form.html
|
924
920
|
- spec/apps/kitchen_sink/app/main/views/main/html_safe.html
|
925
921
|
- spec/apps/kitchen_sink/app/main/views/main/index.html
|
926
922
|
- spec/apps/kitchen_sink/app/main/views/main/main.html
|
@@ -975,6 +971,7 @@ test_files:
|
|
975
971
|
- spec/models/user_spec.rb
|
976
972
|
- spec/models/user_validation_spec.rb
|
977
973
|
- spec/models/validations_spec.rb
|
974
|
+
- spec/models/validators/block_validations_spec.rb
|
978
975
|
- spec/models/validators/email_validator_spec.rb
|
979
976
|
- spec/models/validators/format_validator_spec.rb
|
980
977
|
- spec/models/validators/length_validator_spec.rb
|
@@ -993,6 +990,7 @@ test_files:
|
|
993
990
|
- spec/reactive/reactive_array_spec.rb
|
994
991
|
- spec/reactive/reactive_hash_spec.rb
|
995
992
|
- spec/router/routes_spec.rb
|
993
|
+
- spec/server/component_templates_spec.rb
|
996
994
|
- spec/server/html_parser/sample_page.html
|
997
995
|
- spec/server/html_parser/sandlebars_parser_spec.rb
|
998
996
|
- spec/server/html_parser/view_handler_spec.rb
|
@@ -1011,6 +1009,7 @@ test_files:
|
|
1011
1009
|
- spec/tasks/live_query_spec.rb
|
1012
1010
|
- spec/tasks/query_tasks.rb
|
1013
1011
|
- spec/tasks/query_tracker_spec.rb
|
1012
|
+
- spec/tasks/user_tasks_spec.rb
|
1014
1013
|
- spec/templates/targets/binding_document/component_node_spec.rb
|
1015
1014
|
- spec/utils/generic_counting_pool_spec.rb
|
1016
1015
|
- spec/utils/generic_pool_spec.rb
|