pivotal-jelly 0.3.1 → 0.3.5

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION.yml ADDED
@@ -0,0 +1,4 @@
1
+ ---
2
+ :minor: 3
3
+ :patch: 5
4
+ :major: 0
data/jelly.gemspec CHANGED
@@ -1,12 +1,15 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
1
4
  # -*- encoding: utf-8 -*-
2
5
 
3
6
  Gem::Specification.new do |s|
4
7
  s.name = %q{jelly}
5
- s.version = "0.3.1"
8
+ s.version = "0.3.5"
6
9
 
7
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
11
  s.authors = ["Pivotal Labs, Inc"]
9
- s.date = %q{2009-08-13}
12
+ s.date = %q{2009-08-19}
10
13
  s.description = %q{Jelly provides a set of tools and conventions for creating rich ajax/javascript web applications with jQuery and Ruby on Rails.}
11
14
  s.email = %q{opensource@pivotallabs.com}
12
15
  s.extra_rdoc_files = [
@@ -18,6 +21,7 @@ Gem::Specification.new do |s|
18
21
  "README.markdown",
19
22
  "Rakefile",
20
23
  "VERSION",
24
+ "VERSION.yml",
21
25
  "generators/jelly/USAGE",
22
26
  "generators/jelly/jelly_generator.rb",
23
27
  "generators/jelly/templates/javascripts/ajax_with_jelly.js",
@@ -35,7 +39,7 @@ Gem::Specification.new do |s|
35
39
  s.homepage = %q{http://github.com/pivotal/jelly}
36
40
  s.rdoc_options = ["--charset=UTF-8"]
37
41
  s.require_paths = ["lib"]
38
- s.rubygems_version = %q{1.3.3}
42
+ s.rubygems_version = %q{1.3.5}
39
43
  s.summary = %q{a sweet unobtrusive javascript framework for jQuery and Rails}
40
44
  s.test_files = [
41
45
  "spec/controllers/jelly_controller_spec.rb",
@@ -14,8 +14,17 @@ module JellyHelper
14
14
  JS
15
15
  end
16
16
 
17
+ def clear_jelly_attached()
18
+ @jelly_attached_components = []
19
+ end
20
+
17
21
  def attach_javascript_component(component_name, *args)
18
- content_for(:javascript, "page.attach(#{component_name}, #{args.to_json});")
22
+ @jelly_attached_components ||= []
23
+ key = "page.attach(#{component_name}, #{args.to_json});"
24
+ unless @jelly_attached_components.include? key
25
+ @jelly_attached_components << key
26
+ content_for(:javascript, key)
27
+ end
19
28
  end
20
29
 
21
30
  end
@@ -23,11 +23,26 @@ describe "JellyHelper" do
23
23
  end
24
24
 
25
25
  describe "#attach_javascript_component" do
26
+
27
+ after do
28
+ #need to clear this since it's saving state between tests
29
+ assigns[:content_for_javascript] = ""
30
+ helper.clear_jelly_attached()
31
+ end
32
+
33
+ it "fails to add multiple calls to page.attach for the same component" do
34
+ helper.attach_javascript_component("MyComponent", 'arg1', 'arg2', 'arg3')
35
+ helper.attach_javascript_component("MyComponent", 'arg1', 'arg2', 'arg3')
36
+ helper.attach_javascript_component("MyComponent", 'arg1', 'arg2', 'arg5')
37
+ assigns[:content_for_javascript].should == 'page.attach(MyComponent, ["arg1","arg2","arg3"]);page.attach(MyComponent, ["arg1","arg2","arg5"]);'
38
+ end
39
+
26
40
  it "adds a call to page.attach in the javascript content" do
27
41
  helper.attach_javascript_component("MyComponent", 'arg1', 'arg2', 'arg3')
28
42
  expected_args = ['arg1','arg2','arg3'].to_json
29
- assigns[:content_for_javascript].should include("page.attach(MyComponent, #{expected_args}")
43
+ assigns[:content_for_javascript].should == "page.attach(MyComponent, #{expected_args});"
30
44
  end
45
+
31
46
  end
32
47
 
33
48
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pivotal-jelly
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pivotal Labs, Inc
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-08-13 00:00:00 -07:00
12
+ date: 2009-08-19 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -36,6 +36,7 @@ files:
36
36
  - README.markdown
37
37
  - Rakefile
38
38
  - VERSION
39
+ - VERSION.yml
39
40
  - generators/jelly/USAGE
40
41
  - generators/jelly/jelly_generator.rb
41
42
  - generators/jelly/templates/javascripts/ajax_with_jelly.js