modularity-rails 0.9.0 → 0.9.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.travis.yml +4 -6
- data/Guardfile +3 -4
- data/demo/.gitignore +15 -0
- data/demo/Gemfile +23 -0
- data/demo/README.rdoc +261 -0
- data/demo/Rakefile +7 -0
- data/demo/app/assets/images/rails.png +0 -0
- data/demo/app/assets/javascripts/application.coffee +2 -0
- data/demo/app/assets/stylesheets/application.css +13 -0
- data/demo/app/controllers/application_controller.rb +3 -0
- data/demo/app/helpers/application_helper.rb +2 -0
- data/demo/app/mailers/.gitkeep +0 -0
- data/demo/app/models/.gitkeep +0 -0
- data/demo/app/views/layouts/application.html.erb +14 -0
- data/demo/config.ru +4 -0
- data/demo/config/application.rb +59 -0
- data/demo/config/boot.rb +6 -0
- data/demo/config/database.yml +25 -0
- data/demo/config/environment.rb +5 -0
- data/demo/config/environments/development.rb +37 -0
- data/demo/config/environments/production.rb +67 -0
- data/demo/config/environments/test.rb +37 -0
- data/demo/config/initializers/backtrace_silencers.rb +7 -0
- data/demo/config/initializers/inflections.rb +15 -0
- data/demo/config/initializers/konacha.rb +5 -0
- data/demo/config/initializers/mime_types.rb +5 -0
- data/demo/config/initializers/secret_token.rb +7 -0
- data/demo/config/initializers/session_store.rb +8 -0
- data/demo/config/initializers/wrap_parameters.rb +14 -0
- data/demo/config/locales/en.yml +5 -0
- data/demo/config/routes.rb +58 -0
- data/demo/db/seeds.rb +7 -0
- data/demo/lib/assets/.gitkeep +0 -0
- data/demo/lib/tasks/.gitkeep +0 -0
- data/demo/log/.gitkeep +0 -0
- data/demo/public/404.html +26 -0
- data/demo/public/422.html +26 -0
- data/demo/public/500.html +25 -0
- data/demo/public/favicon.ico +0 -0
- data/demo/public/index.html +241 -0
- data/demo/public/robots.txt +5 -0
- data/demo/script/rails +6 -0
- data/demo/spec/javascripts/konacha_config.coffee +1 -0
- data/demo/spec/javascripts/mixins/closable_spec.coffee +98 -0
- data/{spec → demo/spec}/javascripts/modularity_spec.coffee +118 -109
- data/demo/spec/javascripts/modules/autogrow_textarea_spec.coffee +43 -0
- data/demo/spec/javascripts/modules/button_spec.coffee +39 -0
- data/demo/spec/javascripts/modules/counter_button_spec.coffee +57 -0
- data/demo/spec/javascripts/sinon-chai.js +116 -0
- data/demo/spec/javascripts/sinon.js +3555 -0
- data/demo/spec/javascripts/spec_helper.coffee +11 -0
- data/demo/spec/javascripts/templates/autogrow_textarea.jst.ejs +2 -0
- data/{spec/javascripts/templates/button.html → demo/spec/javascripts/templates/button.jst.ejs} +0 -0
- data/{spec/javascripts/templates/closable.html → demo/spec/javascripts/templates/closable.jst.ejs} +0 -0
- data/{spec/javascripts/templates/test.html → demo/spec/javascripts/templates/modularity.jst.ejs} +0 -0
- data/{spec → demo/spec}/javascripts/tools/ajax_loader_spec.coffee +21 -27
- data/{spec → demo/spec}/javascripts/tools/cache_spec.coffee +13 -18
- data/demo/vendor/assets/javascripts/.gitkeep +0 -0
- data/demo/vendor/assets/stylesheets/.gitkeep +0 -0
- data/demo/vendor/plugins/.gitkeep +0 -0
- data/lib/modularity-rails/version.rb +1 -1
- data/run_tests +6 -0
- data/vendor/assets/javascripts/modularity.js.coffee +2 -1
- data/vendor/assets/javascripts/modules/autogrow_textarea.coffee +31 -0
- data/vendor/assets/javascripts/modules/counter_button.coffee +2 -0
- metadata +73 -26
- data/spec/javascripts/external/coffee-script.js +0 -8
- data/spec/javascripts/external/jasmine-jquery.js +0 -288
- data/spec/javascripts/external/jquery.min.js +0 -4
- data/spec/javascripts/mixins/closable_spec.coffee +0 -101
- data/spec/javascripts/modules/button_spec.coffee +0 -45
- data/spec/javascripts/modules/counter_button_spec.coffee +0 -64
- data/spec/javascripts/spec_helper.coffee +0 -22
@@ -1,64 +0,0 @@
|
|
1
|
-
#= require spec_helper
|
2
|
-
|
3
|
-
describe 'test environment setup', ->
|
4
|
-
|
5
|
-
it 'loading libraries', ->
|
6
|
-
load_modularity()
|
7
|
-
loadCS "/vendor/assets/javascripts/mixins/clickable.coffee"
|
8
|
-
loadCS "/vendor/assets/javascripts/modules/button.coffee"
|
9
|
-
loadCS "/vendor/assets/javascripts/modules/counter_button.coffee"
|
10
|
-
|
11
|
-
|
12
|
-
describe 'CounterButton', ->
|
13
|
-
template 'button.html'
|
14
|
-
|
15
|
-
describe 'standard button functionality', ->
|
16
|
-
|
17
|
-
describe 'manual clicks', ->
|
18
|
-
|
19
|
-
it 'fires when clicking on the container directly', ->
|
20
|
-
button = new modularity.CounterButton('#test #button1')
|
21
|
-
button.bind_event('clicked', (spy = jasmine.createSpy()))
|
22
|
-
|
23
|
-
button.container.click()
|
24
|
-
|
25
|
-
expect(spy).toHaveBeenCalled()
|
26
|
-
expect(spy.callCount).toEqual(1)
|
27
|
-
|
28
|
-
|
29
|
-
it 'fires when clicking embedded elements of the button', ->
|
30
|
-
button = new modularity.CounterButton('#test #button2')
|
31
|
-
button.bind_event('clicked', (spy = jasmine.createSpy()))
|
32
|
-
|
33
|
-
button.container.find('.embedded').click()
|
34
|
-
|
35
|
-
expect(spy).toHaveBeenCalled()
|
36
|
-
expect(spy.callCount).toEqual(1)
|
37
|
-
|
38
|
-
describe 'programmatic clicks', ->
|
39
|
-
|
40
|
-
it 'programmatically clicks the button', ->
|
41
|
-
button = new modularity.CounterButton('#test #button2')
|
42
|
-
spy = jasmine.createSpy()
|
43
|
-
button.bind_event('clicked', spy)
|
44
|
-
|
45
|
-
button.click()
|
46
|
-
|
47
|
-
expect(spy).toHaveBeenCalled()
|
48
|
-
|
49
|
-
describe 'CounterButton specific functionality', ->
|
50
|
-
|
51
|
-
it 'provides the click counter as the event payload', ->
|
52
|
-
button = new modularity.CounterButton('#test #button1')
|
53
|
-
button.bind_event('clicked', (spy = jasmine.createSpy()))
|
54
|
-
|
55
|
-
button.container.click()
|
56
|
-
button.container.click()
|
57
|
-
button.container.click()
|
58
|
-
|
59
|
-
expect(spy.callCount).toEqual(3)
|
60
|
-
expect(spy.argsForCall[0][1]).toEqual(1)
|
61
|
-
expect(spy.argsForCall[1][1]).toEqual(2)
|
62
|
-
expect(spy.argsForCall[2][1]).toEqual(3)
|
63
|
-
|
64
|
-
|
@@ -1,22 +0,0 @@
|
|
1
|
-
require('/spec/javascripts/external/jquery.min.js')
|
2
|
-
require('/spec/javascripts/external/jasmine-jquery.js')
|
3
|
-
require('/spec/javascripts/external/coffee-script.js')
|
4
|
-
|
5
|
-
# Helper method to circumvent that Evergreen doesn't load CoffeeScript files.
|
6
|
-
window.loadCS = (url, callback) ->
|
7
|
-
$.ajax
|
8
|
-
url: url
|
9
|
-
async: false
|
10
|
-
success: (data) ->
|
11
|
-
eval CoffeeScript.compile data
|
12
|
-
callback() if callback
|
13
|
-
|
14
|
-
|
15
|
-
window.load_modularity = ->
|
16
|
-
loadCS "/vendor/assets/javascripts/modularity.js.coffee?#{(new Date()).getTime()}"
|
17
|
-
|
18
|
-
|
19
|
-
beforeEach ->
|
20
|
-
@addMatchers
|
21
|
-
toHaveLength: (expected) ->
|
22
|
-
this.length == expected
|