coolerator.vision 0.1.0 → 0.2.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.
Files changed (51) hide show
  1. data/.gitmodules +3 -0
  2. data/.screwrc +15 -0
  3. data/VERSION +1 -1
  4. data/coolerator.vision.gemspec +46 -3
  5. data/public/javascripts/vendor/coolerator/coolerator.base.js +1 -0
  6. data/public/javascripts/vendor/coolerator/coolerator.filter.js +1 -1
  7. data/public/javascripts/vendor/coolerator/coolerator.module.js +5 -1
  8. data/public/javascripts/vendor/coolerator/coolerator.remote.js +7 -2
  9. data/public/javascripts/vendor/coolerator/coolerator.view.js +38 -18
  10. data/script/pair +61 -0
  11. data/spec/javascripts/support/spec_helper.js +8 -0
  12. data/spec/javascripts/vendor/coolerator/coolerator.base_spec.js +9 -0
  13. data/spec/javascripts/vendor/coolerator/coolerator.filter_spec.js +9 -0
  14. data/spec/javascripts/vendor/coolerator/coolerator.module_spec.js +9 -0
  15. data/spec/javascripts/vendor/coolerator/coolerator.registrar_spec.js +9 -0
  16. data/spec/javascripts/vendor/coolerator/coolerator.remote_spec.js +9 -0
  17. data/spec/javascripts/vendor/coolerator/coolerator.view_spec.js +87 -0
  18. data/spec/support/vendor/screw-unit/lib/screw_unit.rb +19 -0
  19. data/spec/support/vendor/screw-unit/lib/screw_unit/array_extension.rb +10 -0
  20. data/spec/support/vendor/screw-unit/lib/screw_unit/asset_location.rb +67 -0
  21. data/spec/support/vendor/screw-unit/lib/screw_unit/asset_manager.rb +68 -0
  22. data/spec/support/vendor/screw-unit/lib/screw_unit/configuration.rb +91 -0
  23. data/spec/support/vendor/screw-unit/lib/screw_unit/dispatcher.rb +41 -0
  24. data/spec/support/vendor/screw-unit/lib/screw_unit/js_file.rb +60 -0
  25. data/spec/support/vendor/screw-unit/lib/screw_unit/resources.rb +9 -0
  26. data/spec/support/vendor/screw-unit/lib/screw_unit/resources/dir.rb +24 -0
  27. data/spec/support/vendor/screw-unit/lib/screw_unit/resources/file.rb +40 -0
  28. data/spec/support/vendor/screw-unit/lib/screw_unit/resources/file_not_found.rb +24 -0
  29. data/spec/support/vendor/screw-unit/lib/screw_unit/resources/root.rb +27 -0
  30. data/spec/support/vendor/screw-unit/lib/screw_unit/resources/spec_dir.rb +30 -0
  31. data/spec/support/vendor/screw-unit/lib/screw_unit/resources/spec_runner.rb +88 -0
  32. data/spec/support/vendor/screw-unit/lib/screw_unit/resources/streaming_spec_runner.rb +27 -0
  33. data/spec/support/vendor/screw-unit/lib/screw_unit/resources/suite_completion.rb +25 -0
  34. data/spec/support/vendor/screw-unit/lib/screw_unit/server.rb +43 -0
  35. data/spec/support/vendor/screw-unit/lib/screw_unit/string_extension.rb +9 -0
  36. data/spec/support/vendor/screw-unit/spec/screw_unit/array_extension_spec.rb +15 -0
  37. data/spec/support/vendor/screw-unit/spec/screw_unit/asset_location_spec.rb +31 -0
  38. data/spec/support/vendor/screw-unit/spec/screw_unit/asset_manager_spec.rb +92 -0
  39. data/spec/support/vendor/screw-unit/spec/screw_unit/configuration_spec.rb +51 -0
  40. data/spec/support/vendor/screw-unit/spec/screw_unit/dispatcher_spec.rb +60 -0
  41. data/spec/support/vendor/screw-unit/spec/screw_unit/js_file_spec.rb +24 -0
  42. data/spec/support/vendor/screw-unit/spec/screw_unit/resources/dir_spec.rb +68 -0
  43. data/spec/support/vendor/screw-unit/spec/screw_unit/resources/file_spec.rb +97 -0
  44. data/spec/support/vendor/screw-unit/spec/screw_unit/resources/root_spec.rb +48 -0
  45. data/spec/support/vendor/screw-unit/spec/screw_unit/resources/spec_dir_spec.rb +52 -0
  46. data/spec/support/vendor/screw-unit/spec/screw_unit/resources/spec_suite_spec.rb +46 -0
  47. data/spec/support/vendor/screw-unit/spec/screw_unit/resources/suite_completion_spec.rb +68 -0
  48. data/spec/support/vendor/screw-unit/spec/screw_unit/server_spec.rb +15 -0
  49. data/spec/support/vendor/screw-unit/spec/screw_unit_spec_helper.rb +13 -0
  50. data/spec/support/vendor/screw-unit/spec/screw_unit_spec_suite.rb +4 -0
  51. metadata +45 -2
data/.gitmodules ADDED
@@ -0,0 +1,3 @@
1
+ [submodule "spec/support/vendor/screw-unit"]
2
+ path = spec/support/vendor/screw-unit
3
+ url = git://github.com/grockit/screw-unit.git
data/.screwrc ADDED
@@ -0,0 +1,15 @@
1
+ ScrewUnit.configure do
2
+ def absolutize_path(relative_path)
3
+ basepath = relative_path.match(/^\//) ? '' : path_containing_screwrc
4
+ File.expand_path(File.join(basepath, relative_path))
5
+ end
6
+
7
+ port 8081
8
+
9
+ add_js_location "/engine", "public/javascripts"
10
+ add_js_location("/screw_unit_core", "spec/support/vendor/screw-unit/client/lib")
11
+ add_js_location("/screw_unit_vendor", "spec/support/vendor/screw-unit/client/vendor")
12
+ add_js_location("/screw_unit_stylesheets", "spec/support/vendor/screw-unit/client/stylesheets")
13
+
14
+ add_js_location "/specs", "spec/javascripts"
15
+ end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.2.0
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{coolerator.vision}
8
- s.version = "0.1.0"
8
+ s.version = "0.2.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Corey Innis"]
12
- s.date = %q{2009-11-10}
12
+ s.date = %q{2009-11-12}
13
13
  s.description = %q{A Rails plugin}
14
14
  s.email = %q{corey@coolerator.net}
15
15
  s.extra_rdoc_files = [
@@ -19,6 +19,8 @@ Gem::Specification.new do |s|
19
19
  s.files = [
20
20
  ".document",
21
21
  ".gitignore",
22
+ ".gitmodules",
23
+ ".screwrc",
22
24
  "LICENSE",
23
25
  "README.rdoc",
24
26
  "Rakefile",
@@ -46,7 +48,15 @@ Gem::Specification.new do |s|
46
48
  "public/javascripts/vendor/prez/prez.js",
47
49
  "public/javascripts/vendor/prez/prez.js",
48
50
  "rails/init.rb",
51
+ "script/pair",
49
52
  "spec/coolerator.vision_spec.rb",
53
+ "spec/javascripts/support/spec_helper.js",
54
+ "spec/javascripts/vendor/coolerator/coolerator.base_spec.js",
55
+ "spec/javascripts/vendor/coolerator/coolerator.filter_spec.js",
56
+ "spec/javascripts/vendor/coolerator/coolerator.module_spec.js",
57
+ "spec/javascripts/vendor/coolerator/coolerator.registrar_spec.js",
58
+ "spec/javascripts/vendor/coolerator/coolerator.remote_spec.js",
59
+ "spec/javascripts/vendor/coolerator/coolerator.view_spec.js",
50
60
  "spec/spec.opts",
51
61
  "spec/spec_helper.rb"
52
62
  ]
@@ -57,7 +67,40 @@ Gem::Specification.new do |s|
57
67
  s.summary = %q{A Rails plugin}
58
68
  s.test_files = [
59
69
  "spec/coolerator.vision_spec.rb",
60
- "spec/spec_helper.rb"
70
+ "spec/spec_helper.rb",
71
+ "spec/support/vendor/screw-unit/lib/screw_unit/array_extension.rb",
72
+ "spec/support/vendor/screw-unit/lib/screw_unit/asset_location.rb",
73
+ "spec/support/vendor/screw-unit/lib/screw_unit/asset_manager.rb",
74
+ "spec/support/vendor/screw-unit/lib/screw_unit/configuration.rb",
75
+ "spec/support/vendor/screw-unit/lib/screw_unit/dispatcher.rb",
76
+ "spec/support/vendor/screw-unit/lib/screw_unit/js_file.rb",
77
+ "spec/support/vendor/screw-unit/lib/screw_unit/resources/dir.rb",
78
+ "spec/support/vendor/screw-unit/lib/screw_unit/resources/file.rb",
79
+ "spec/support/vendor/screw-unit/lib/screw_unit/resources/file_not_found.rb",
80
+ "spec/support/vendor/screw-unit/lib/screw_unit/resources/root.rb",
81
+ "spec/support/vendor/screw-unit/lib/screw_unit/resources/spec_dir.rb",
82
+ "spec/support/vendor/screw-unit/lib/screw_unit/resources/spec_runner.rb",
83
+ "spec/support/vendor/screw-unit/lib/screw_unit/resources/streaming_spec_runner.rb",
84
+ "spec/support/vendor/screw-unit/lib/screw_unit/resources/suite_completion.rb",
85
+ "spec/support/vendor/screw-unit/lib/screw_unit/resources.rb",
86
+ "spec/support/vendor/screw-unit/lib/screw_unit/server.rb",
87
+ "spec/support/vendor/screw-unit/lib/screw_unit/string_extension.rb",
88
+ "spec/support/vendor/screw-unit/lib/screw_unit.rb",
89
+ "spec/support/vendor/screw-unit/spec/screw_unit/array_extension_spec.rb",
90
+ "spec/support/vendor/screw-unit/spec/screw_unit/asset_location_spec.rb",
91
+ "spec/support/vendor/screw-unit/spec/screw_unit/asset_manager_spec.rb",
92
+ "spec/support/vendor/screw-unit/spec/screw_unit/configuration_spec.rb",
93
+ "spec/support/vendor/screw-unit/spec/screw_unit/dispatcher_spec.rb",
94
+ "spec/support/vendor/screw-unit/spec/screw_unit/js_file_spec.rb",
95
+ "spec/support/vendor/screw-unit/spec/screw_unit/resources/dir_spec.rb",
96
+ "spec/support/vendor/screw-unit/spec/screw_unit/resources/file_spec.rb",
97
+ "spec/support/vendor/screw-unit/spec/screw_unit/resources/root_spec.rb",
98
+ "spec/support/vendor/screw-unit/spec/screw_unit/resources/spec_dir_spec.rb",
99
+ "spec/support/vendor/screw-unit/spec/screw_unit/resources/spec_suite_spec.rb",
100
+ "spec/support/vendor/screw-unit/spec/screw_unit/resources/suite_completion_spec.rb",
101
+ "spec/support/vendor/screw-unit/spec/screw_unit/server_spec.rb",
102
+ "spec/support/vendor/screw-unit/spec/screw_unit_spec_helper.rb",
103
+ "spec/support/vendor/screw-unit/spec/screw_unit_spec_suite.rb"
61
104
  ]
62
105
 
63
106
  if s.respond_to? :specification_version then
@@ -1,4 +1,5 @@
1
1
  (function($) {
2
+ // VERSION 0.1.0
2
3
  // $.noConflict();
3
4
 
4
5
  Coolerator = {
@@ -5,7 +5,7 @@
5
5
  scoped : {},
6
6
 
7
7
  get : function get(scope) {
8
- return $.merge(this.global, this.scoped[scope]);
8
+ return $.merge(this.global, this.scoped[scope] || []);
9
9
  }
10
10
  },
11
11
 
@@ -1,3 +1,7 @@
1
1
  (function($) {
2
-
2
+ $.extend(Coolerator, {
3
+ Module : function Module() {
4
+ // TODO :)
5
+ }
6
+ });
3
7
  })(jQuery);
@@ -29,7 +29,7 @@
29
29
 
30
30
  },
31
31
 
32
- delete : function delete() {
32
+ del : function del() {
33
33
 
34
34
  },
35
35
 
@@ -64,6 +64,9 @@
64
64
  function subscribe() {
65
65
  Coolerator.Registrar.subscribe(self, function(registrar) {
66
66
  with(registrar) {
67
+ use(this.link.handle)
68
+ .on('click', selectors.link);
69
+
67
70
  on('click', selectors.link)
68
71
  .use(this.link.handle);
69
72
 
@@ -171,6 +174,7 @@
171
174
  },
172
175
 
173
176
  on_keypress : function on_keypress(e) {
177
+ // TODO: if the field is a textarea, only submit with a modifier key.
174
178
  if(e.which === 13) {
175
179
  this.closest('form').submit();
176
180
  return false;
@@ -207,9 +211,10 @@
207
211
 
208
212
  filters : {
209
213
  prepare : function prepare(response) {
214
+ response.filters = Coolerator.Filters.get(response.trigger);
215
+
210
216
  $.each(response.templates, function prepare_views(name, content) {
211
217
  response.templates[name] = $(content);
212
- response.filters = Coolerator.Filters.get(response.trigger);
213
218
  });
214
219
  },
215
220
 
@@ -2,6 +2,26 @@
2
2
  $.extend(Coolerator, {
3
3
  View : function View(classifier) {
4
4
  this.classifier = classifier;
5
+
6
+ $.extend(this, {
7
+ instance : {
8
+ content : function content(builder, attributes) {
9
+ var html_attributes = attributes.classifier ? { 'class' : attributes.classifier } : {};
10
+
11
+ with(builder) {
12
+ div(html_attributes);
13
+ }
14
+ },
15
+
16
+ methods : {
17
+ initialize : function initialize() {
18
+ if(this.content) {
19
+ this.html(this.content);
20
+ }
21
+ }
22
+ }
23
+ }
24
+ });
5
25
  }
6
26
  });
7
27
 
@@ -25,7 +45,7 @@
25
45
  });
26
46
 
27
47
  $.extend(true, this.instance, extension.instance);
28
- $.extend(true, this, extension.collection.methods, extension.collection.configuration);
48
+ extension.collection && $.extend(true, this, extension.collection.methods, extension.collection.configuration);
29
49
  },
30
50
 
31
51
  subscribe : function subscribe(callback) {
@@ -61,22 +81,22 @@
61
81
  return result;
62
82
  },
63
83
 
64
- instance : {
65
- content : function content(builder, attributes) {
66
- var html_attributes = attributes.classifier ? { 'class' : attributes.classifier } : {};
67
-
68
- with(builder) {
69
- div(html_attributes);
70
- }
71
- },
72
-
73
- methods : {
74
- initialize : function initialize() {
75
- if(this.content) {
76
- this.html(this.content);
77
- }
78
- }
79
- }
80
- }
84
+ // instance : {
85
+ // content : function content(builder, attributes) {
86
+ // var html_attributes = attributes.classifier ? { 'class' : attributes.classifier } : {};
87
+ //
88
+ // with(builder) {
89
+ // div(html_attributes);
90
+ // }
91
+ // },
92
+ //
93
+ // methods : {
94
+ // initialize : function initialize() {
95
+ // if(this.content) {
96
+ // this.html(this.content);
97
+ // }
98
+ // }
99
+ // }
100
+ // }
81
101
  });
82
102
  })(jQuery);
data/script/pair ADDED
@@ -0,0 +1,61 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # Configures the git author to a list of developers when pair programming
4
+ #
5
+ # Usage: pair lm bh (Sets the author to 'Luke Melia and Bryan Helmkamp')
6
+ # pair (Unsets the author so the git global config takes effect)
7
+ #
8
+ # Author: Bryan Helmkamp (http://brynary.com)
9
+
10
+ #######################################################################
11
+ ## Configuration
12
+
13
+ # PAIR_EMAIL = "developers@weplay.com"
14
+
15
+ AUTHORS = {
16
+ "ci" => "Corey Innis",
17
+ "rh" => "Rachel Heaton"
18
+ }
19
+
20
+ ## End of configuration
21
+ #######################################################################
22
+
23
+ unless File.exists?(".git")
24
+ puts "This doesn't look like a git repository."
25
+ exit 1
26
+ end
27
+
28
+ authors = ARGV.map do |initials|
29
+ if AUTHORS[initials.downcase]
30
+ AUTHORS[initials.downcase]
31
+ else
32
+ puts "Couldn't find author name for initials: #{initials}"
33
+ exit 1
34
+ end
35
+ end
36
+
37
+ if authors.any?
38
+ if authors.size == 1
39
+ authors = authors.first
40
+ if ENV['SOLO'].nil?
41
+ puts "\n"
42
+ puts " **If you are soloing, please create a separate branch** "
43
+ puts "\n"
44
+ end
45
+ elsif authors.size == 2
46
+ authors = authors.join(" and ")
47
+ else
48
+ authors = authors[0..-2].join(", ") + " and " + authors.last
49
+ end
50
+
51
+ `git config user.name '#{authors}'`
52
+ # `git config user.email '#{PAIR_EMAIL}'`
53
+
54
+ puts "user.name = #{authors}"
55
+ # puts "user.email = #{PAIR_EMAIL}"
56
+ else
57
+ `git config --unset user.name`
58
+ # `git config --unset user.email`
59
+
60
+ puts "Unset user.name"
61
+ end
@@ -0,0 +1,8 @@
1
+ //= require <vendor/jquery/jquery>
2
+ //= require <vendor/prez/prez>
3
+ //= require <vendor/coolerator/coolerator.base>
4
+ //= require <vendor/coolerator/coolerator.registrar>
5
+ //= require <vendor/coolerator/coolerator.remote>
6
+ //= require <vendor/coolerator/coolerator.module>
7
+ //= require <vendor/coolerator/coolerator.view>
8
+ //= require <vendor/coolerator/coolerator.filter>
@@ -0,0 +1,9 @@
1
+ //= require <support/spec_helper>
2
+
3
+ Screw.Unit(function(c) { with(c) {
4
+ describe("Coolerator.Base", function() {
5
+ it("creates the Coolerator namespace", function() {
6
+ expect(typeof Coolerator).to(equal, 'object');
7
+ });
8
+ });
9
+ }});
@@ -0,0 +1,9 @@
1
+ //= require <support/spec_helper>
2
+
3
+ Screw.Unit(function(c) { with(c) {
4
+ describe("Coolerator.Filter", function() {
5
+ it("is added to the Coolerator namespace", function() {
6
+ expect(typeof Coolerator.Filter).to(equal, 'function');
7
+ });
8
+ });
9
+ }});
@@ -0,0 +1,9 @@
1
+ //= require <support/spec_helper>
2
+
3
+ Screw.Unit(function(c) { with(c) {
4
+ describe("Coolerator.Module", function() {
5
+ it("is added to the Coolerator namespace", function() {
6
+ expect(typeof Coolerator.Module).to(equal, 'function');
7
+ });
8
+ });
9
+ }});
@@ -0,0 +1,9 @@
1
+ //= require <support/spec_helper>
2
+
3
+ Screw.Unit(function(c) { with(c) {
4
+ describe("Coolerator.Registrar", function() {
5
+ it("is added to the Coolerator namespace", function() {
6
+ expect(typeof Coolerator.Registrar).to(equal, 'object');
7
+ });
8
+ });
9
+ }});
@@ -0,0 +1,9 @@
1
+ //= require <support/spec_helper>
2
+
3
+ Screw.Unit(function(c) { with(c) {
4
+ describe("Coolerator.Remote", function() {
5
+ it("is added to the Coolerator namespace", function() {
6
+ expect(typeof Coolerator.Remote).to(equal, 'object');
7
+ });
8
+ });
9
+ }});
@@ -0,0 +1,87 @@
1
+ //= require <support/spec_helper>
2
+
3
+ Screw.Unit(function(c) { with(c) {
4
+ describe("Coolerator.View", function() {
5
+ it("is added to the Coolerator namespace", function() {
6
+ expect(typeof Coolerator.View).to(equal, 'function');
7
+ });
8
+
9
+ describe("collection", function() {
10
+ it("is optional", function() {
11
+ var fn = function() {
12
+ var view = new Coolerator.View('one');
13
+
14
+ view.extend({
15
+ instance : {
16
+ methods : {}
17
+ }
18
+ });
19
+ };
20
+
21
+ expect(fn).to_not(throw_exception);
22
+ });
23
+ });
24
+
25
+ describe("instance", function() {
26
+ describe("methods which are implemented in super and child objects", function() {
27
+ var view, other;
28
+
29
+ before(function() {
30
+ other = new Coolerator.View('other');
31
+ view = new Coolerator.View('child');
32
+
33
+ view.extend({
34
+ instance : {
35
+ methods : {
36
+ initialize : function initialize() {}
37
+ }
38
+ }
39
+ })
40
+ });
41
+
42
+ it("provides a mechanism for calling #super", function() {
43
+ var instance = view.build();
44
+ expect(instance.initialize.super).to(equal, other.instance.methods.initialize);
45
+ });
46
+ });
47
+
48
+ describe("when two or more Views implement the same method", function() {
49
+ var instance1, instance2;
50
+
51
+ before(function() {
52
+ view1 = new Coolerator.View('one');
53
+
54
+ view1.extend({
55
+ instance : {
56
+ methods : {
57
+ foo : function foo() {
58
+ return "foo an instance of view1";
59
+ }
60
+ }
61
+ }
62
+ });
63
+
64
+ view2 = new Coolerator.View('two');
65
+
66
+ view2.extend({
67
+ instance : {
68
+ methods : {
69
+ foo : function foo() {
70
+ return "foo an instance of view2";
71
+ }
72
+ }
73
+ }
74
+ });
75
+
76
+ instance1 = view1.build();
77
+ instance2 = view2.build();
78
+ });
79
+
80
+ it("allows them to coexist", function() {
81
+ expect(instance1.foo()).to(equal, "foo an instance of view1");
82
+ expect(instance2.foo()).to(equal, "foo an instance of view2");
83
+ });
84
+ });
85
+ });
86
+ });
87
+ }});