jazrb 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (184) hide show
  1. data/LICENSE +20 -0
  2. data/README.rdoc +134 -0
  3. data/bin/autojaz +4 -0
  4. data/bin/jazrb +230 -0
  5. data/doc/jasmine/files.html +460 -0
  6. data/doc/jasmine/index.html +322 -0
  7. data/doc/jasmine/symbols/_global_.html +1083 -0
  8. data/doc/jasmine/symbols/jasmine.Block.html +417 -0
  9. data/doc/jasmine/symbols/jasmine.Clock.html +678 -0
  10. data/doc/jasmine/symbols/jasmine.Env.html +1135 -0
  11. data/doc/jasmine/symbols/jasmine.EnvjsReporter.html +328 -0
  12. data/doc/jasmine/symbols/jasmine.JsApiReporter.html +822 -0
  13. data/doc/jasmine/symbols/jasmine.Matchers.html +1106 -0
  14. data/doc/jasmine/symbols/jasmine.MultiReporter.html +394 -0
  15. data/doc/jasmine/symbols/jasmine.NestedResults.html +710 -0
  16. data/doc/jasmine/symbols/jasmine.Reporter.html +574 -0
  17. data/doc/jasmine/symbols/jasmine.Runner.html +710 -0
  18. data/doc/jasmine/symbols/jasmine.Spec.html +1372 -0
  19. data/doc/jasmine/symbols/jasmine.Spy.html +855 -0
  20. data/doc/jasmine/symbols/jasmine.Suite.html +705 -0
  21. data/doc/jasmine/symbols/jasmine.XMLReporter.html +328 -0
  22. data/doc/jasmine/symbols/jasmine.html +1359 -0
  23. data/doc/jasmine/symbols/jasmine.util.html +535 -0
  24. data/doc/jasmine/symbols/src/lib_EnvjsReporter.js.html +149 -0
  25. data/doc/jasmine/symbols/src/lib_TrivialReporter.js.html +127 -0
  26. data/doc/jasmine/symbols/src/lib_XMLReporter.js.html +210 -0
  27. data/doc/jasmine/symbols/src/src_Block.js.html +35 -0
  28. data/doc/jasmine/symbols/src/src_Env.js.html +233 -0
  29. data/doc/jasmine/symbols/src/src_JsApiReporter.js.html +110 -0
  30. data/doc/jasmine/symbols/src/src_Matchers.js.html +399 -0
  31. data/doc/jasmine/symbols/src/src_MultiReporter.js.html +36 -0
  32. data/doc/jasmine/symbols/src/src_NestedResults.js.html +88 -0
  33. data/doc/jasmine/symbols/src/src_PrettyPrinter.js.html +128 -0
  34. data/doc/jasmine/symbols/src/src_Queue.js.html +119 -0
  35. data/doc/jasmine/symbols/src/src_Reporter.js.html +35 -0
  36. data/doc/jasmine/symbols/src/src_Reporters.js.html +51 -0
  37. data/doc/jasmine/symbols/src/src_Runner.js.html +75 -0
  38. data/doc/jasmine/symbols/src/src_Spec.js.html +228 -0
  39. data/doc/jasmine/symbols/src/src_Suite.js.html +77 -0
  40. data/doc/jasmine/symbols/src/src_WaitsBlock.js.html +21 -0
  41. data/doc/jasmine/symbols/src/src_WaitsForBlock.js.html +45 -0
  42. data/doc/jasmine/symbols/src/src_base.js.html +566 -0
  43. data/doc/jasmine/symbols/src/src_mock-timeout.js.html +185 -0
  44. data/doc/jasmine/symbols/src/src_util.js.html +75 -0
  45. data/lib/autotest/discover.rb +3 -0
  46. data/lib/autotest/jazrb.rb +55 -0
  47. data/lib/jazrb/intro.js +46 -0
  48. data/lib/jazrb/jasmine/EnvjsReporter.js +141 -0
  49. data/lib/jazrb/jasmine/TrivialReporter.js +155 -0
  50. data/lib/jazrb/jasmine/XMLReporter.js +241 -0
  51. data/lib/jazrb/jasmine/consolex.js +28 -0
  52. data/lib/jazrb/jasmine/jasmine-0.10.0.js +2526 -0
  53. data/lib/jazrb/jasmine/jasmine.js +2526 -0
  54. data/lib/jazrb/jasmine/json2.js +478 -0
  55. data/lib/jazrb/options.rb +26 -0
  56. data/lib/jazrb/outro.js +3 -0
  57. data/lib/jazrb/qintro.js +113 -0
  58. data/lib/jazrb/qoutro.js +3 -0
  59. data/lib/jazrb/qunit/qunit.css +17 -0
  60. data/lib/jazrb/qunit/qunit.js +1027 -0
  61. data/lib/jazrb.rb +0 -0
  62. data/spec/example/hello_world_spec.js +29 -0
  63. data/spec/example/nested/HelloWorldSpec.js +13 -0
  64. data/spec/example/nested/SpecHelper.js +1 -0
  65. data/spec/example/plain_spec.js +8 -0
  66. data/spec/example/spec_helper.js +1 -0
  67. data/spec/spec_helper.js +18 -0
  68. data/spec/spec_runner.js +143 -0
  69. data/test/jazrb_test.rb +7 -0
  70. data/test/test_helper.rb +10 -0
  71. data/vendor/jasmine/MIT.LICENSE +20 -0
  72. data/vendor/jasmine/README.markdown +479 -0
  73. data/vendor/jasmine/Rakefile +155 -0
  74. data/vendor/jasmine/contrib/ruby/jasmine_runner.rb +334 -0
  75. data/vendor/jasmine/contrib/ruby/jasmine_spec_builder.rb +153 -0
  76. data/vendor/jasmine/contrib/ruby/run.html +47 -0
  77. data/vendor/jasmine/contrib/ruby/spec/jasmine_runner_spec.rb +71 -0
  78. data/vendor/jasmine/doc/files.html +460 -0
  79. data/vendor/jasmine/doc/index.html +322 -0
  80. data/vendor/jasmine/doc/symbols/_global_.html +1083 -0
  81. data/vendor/jasmine/doc/symbols/jasmine.Block.html +417 -0
  82. data/vendor/jasmine/doc/symbols/jasmine.Clock.html +678 -0
  83. data/vendor/jasmine/doc/symbols/jasmine.Env.html +1135 -0
  84. data/vendor/jasmine/doc/symbols/jasmine.EnvjsReporter.html +328 -0
  85. data/vendor/jasmine/doc/symbols/jasmine.JsApiReporter.html +822 -0
  86. data/vendor/jasmine/doc/symbols/jasmine.Matchers.html +1106 -0
  87. data/vendor/jasmine/doc/symbols/jasmine.MultiReporter.html +394 -0
  88. data/vendor/jasmine/doc/symbols/jasmine.NestedResults.html +710 -0
  89. data/vendor/jasmine/doc/symbols/jasmine.Reporter.html +574 -0
  90. data/vendor/jasmine/doc/symbols/jasmine.Runner.html +710 -0
  91. data/vendor/jasmine/doc/symbols/jasmine.Spec.html +1372 -0
  92. data/vendor/jasmine/doc/symbols/jasmine.Spy.html +855 -0
  93. data/vendor/jasmine/doc/symbols/jasmine.Suite.html +705 -0
  94. data/vendor/jasmine/doc/symbols/jasmine.XMLReporter.html +328 -0
  95. data/vendor/jasmine/doc/symbols/jasmine.html +1359 -0
  96. data/vendor/jasmine/doc/symbols/jasmine.util.html +535 -0
  97. data/vendor/jasmine/doc/symbols/src/lib_EnvjsReporter.js.html +149 -0
  98. data/vendor/jasmine/doc/symbols/src/lib_TrivialReporter.js.html +127 -0
  99. data/vendor/jasmine/doc/symbols/src/lib_XMLReporter.js.html +210 -0
  100. data/vendor/jasmine/doc/symbols/src/src_Block.js.html +35 -0
  101. data/vendor/jasmine/doc/symbols/src/src_Env.js.html +233 -0
  102. data/vendor/jasmine/doc/symbols/src/src_JsApiReporter.js.html +110 -0
  103. data/vendor/jasmine/doc/symbols/src/src_Matchers.js.html +399 -0
  104. data/vendor/jasmine/doc/symbols/src/src_MultiReporter.js.html +36 -0
  105. data/vendor/jasmine/doc/symbols/src/src_NestedResults.js.html +88 -0
  106. data/vendor/jasmine/doc/symbols/src/src_PrettyPrinter.js.html +128 -0
  107. data/vendor/jasmine/doc/symbols/src/src_Queue.js.html +119 -0
  108. data/vendor/jasmine/doc/symbols/src/src_Reporter.js.html +35 -0
  109. data/vendor/jasmine/doc/symbols/src/src_Reporters.js.html +51 -0
  110. data/vendor/jasmine/doc/symbols/src/src_Runner.js.html +75 -0
  111. data/vendor/jasmine/doc/symbols/src/src_Spec.js.html +228 -0
  112. data/vendor/jasmine/doc/symbols/src/src_Suite.js.html +77 -0
  113. data/vendor/jasmine/doc/symbols/src/src_WaitsBlock.js.html +21 -0
  114. data/vendor/jasmine/doc/symbols/src/src_WaitsForBlock.js.html +45 -0
  115. data/vendor/jasmine/doc/symbols/src/src_base.js.html +566 -0
  116. data/vendor/jasmine/doc/symbols/src/src_mock-timeout.js.html +185 -0
  117. data/vendor/jasmine/doc/symbols/src/src_util.js.html +75 -0
  118. data/vendor/jasmine/examples/html/example_suite.html +27 -0
  119. data/vendor/jasmine/examples/html/spec/example_suite.js +11 -0
  120. data/vendor/jasmine/examples/ruby/Rakefile +33 -0
  121. data/vendor/jasmine/examples/ruby/spec/example/example_spec.js +11 -0
  122. data/vendor/jasmine/examples/ruby/spec/jasmine_helper.rb +41 -0
  123. data/vendor/jasmine/examples/ruby/spec/jasmine_spec.rb +31 -0
  124. data/vendor/jasmine/examples/ruby/spec/saucelabs.yml +24 -0
  125. data/vendor/jasmine/geminstaller.yml +23 -0
  126. data/vendor/jasmine/images/fail-16.png +0 -0
  127. data/vendor/jasmine/images/fail.png +0 -0
  128. data/vendor/jasmine/images/go-16.png +0 -0
  129. data/vendor/jasmine/images/go.png +0 -0
  130. data/vendor/jasmine/images/pending-16.png +0 -0
  131. data/vendor/jasmine/images/pending.png +0 -0
  132. data/vendor/jasmine/images/question-bk.png +0 -0
  133. data/vendor/jasmine/images/questionbk-16.png +0 -0
  134. data/vendor/jasmine/images/spinner.gif +0 -0
  135. data/vendor/jasmine/jasmine.watchr +70 -0
  136. data/vendor/jasmine/lib/EnvjsReporter.js +141 -0
  137. data/vendor/jasmine/lib/TrivialReporter.js +155 -0
  138. data/vendor/jasmine/lib/XMLReporter.js +241 -0
  139. data/vendor/jasmine/lib/consolex.js +28 -0
  140. data/vendor/jasmine/lib/jasmine-0.10.0.js +2526 -0
  141. data/vendor/jasmine/lib/jasmine.css +86 -0
  142. data/vendor/jasmine/lib/json2.js +478 -0
  143. data/vendor/jasmine/spec/jasmine_helper.rb +44 -0
  144. data/vendor/jasmine/spec/jasmine_spec.rb +31 -0
  145. data/vendor/jasmine/spec/runner.html +43 -0
  146. data/vendor/jasmine/spec/runner.js +78 -0
  147. data/vendor/jasmine/spec/saucelabs.yml +24 -0
  148. data/vendor/jasmine/spec/suites/EnvSpec.js +71 -0
  149. data/vendor/jasmine/spec/suites/ExceptionsSpec.js +107 -0
  150. data/vendor/jasmine/spec/suites/JsApiReporterSpec.js +82 -0
  151. data/vendor/jasmine/spec/suites/MatchersSpec.js +589 -0
  152. data/vendor/jasmine/spec/suites/MockClockSpec.js +34 -0
  153. data/vendor/jasmine/spec/suites/MultiReporterSpec.js +30 -0
  154. data/vendor/jasmine/spec/suites/NestedResultsSpec.js +54 -0
  155. data/vendor/jasmine/spec/suites/PrettyPrintSpec.js +93 -0
  156. data/vendor/jasmine/spec/suites/QueueSpec.js +23 -0
  157. data/vendor/jasmine/spec/suites/ReporterSpec.js +60 -0
  158. data/vendor/jasmine/spec/suites/RunnerSpec.js +258 -0
  159. data/vendor/jasmine/spec/suites/SpecRunningSpec.js +1117 -0
  160. data/vendor/jasmine/spec/suites/SpecSpec.js +110 -0
  161. data/vendor/jasmine/spec/suites/SpySpec.js +187 -0
  162. data/vendor/jasmine/spec/suites/SuiteSpec.js +101 -0
  163. data/vendor/jasmine/spec/suites/TrivialReporterSpec.js +140 -0
  164. data/vendor/jasmine/spec/suites/UtilSpec.js +23 -0
  165. data/vendor/jasmine/src/Block.js +34 -0
  166. data/vendor/jasmine/src/Env.js +236 -0
  167. data/vendor/jasmine/src/JsApiReporter.js +103 -0
  168. data/vendor/jasmine/src/Matchers.js +326 -0
  169. data/vendor/jasmine/src/MultiReporter.js +28 -0
  170. data/vendor/jasmine/src/NestedResults.js +99 -0
  171. data/vendor/jasmine/src/PrettyPrinter.js +122 -0
  172. data/vendor/jasmine/src/Queue.js +210 -0
  173. data/vendor/jasmine/src/Reporter.js +27 -0
  174. data/vendor/jasmine/src/Reporters.js +43 -0
  175. data/vendor/jasmine/src/Runner.js +68 -0
  176. data/vendor/jasmine/src/Spec.js +254 -0
  177. data/vendor/jasmine/src/Suite.js +70 -0
  178. data/vendor/jasmine/src/WaitsBlock.js +13 -0
  179. data/vendor/jasmine/src/WaitsForBlock.js +38 -0
  180. data/vendor/jasmine/src/base.js +604 -0
  181. data/vendor/jasmine/src/mock-timeout.js +177 -0
  182. data/vendor/jasmine/src/util.js +67 -0
  183. data/vendor/jasmine/src/version.json +5 -0
  184. metadata +279 -0
data/lib/jazrb.rb ADDED
File without changes
@@ -0,0 +1,29 @@
1
+ jasmine.include(jazrb_root + "/spec/example/spec_helper.js");
2
+
3
+ (function($){
4
+
5
+ describe("hello_world",function(){
6
+
7
+ describe("contents",function(){
8
+
9
+ var loops = 500000;
10
+
11
+ for(var i = 0; i < 10; i++ ) {
12
+
13
+ it("should contain the text 'Hello, World'",function(){
14
+ expect($("div:contains('Hello, World')").size()).toBeGreaterThan(0);
15
+ for(var j = 0; j<loops; j++);
16
+ });
17
+
18
+ it("should contain the text 'Hello, World'",function(){
19
+ expect($("div:contains('Hello, World')").size()).toBeGreaterThan(0);
20
+ for(var j = 0; j<loops; j++);
21
+ });
22
+
23
+ }
24
+
25
+ });
26
+
27
+ });
28
+
29
+ })(jQuery);
@@ -0,0 +1,13 @@
1
+ jasmine.include(jazrb_root + "/spec/example/nested/SpecHelper.js");
2
+
3
+ (function($){
4
+
5
+ describe("hello_world",function(){
6
+
7
+ it("should contain the text 'Hello, World'",function(){
8
+ expect($("div:contains('Hello, World')").size()).toBeGreaterThan(0);
9
+ });
10
+
11
+ });
12
+
13
+ })(jQuery);
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,8 @@
1
+ describe("truthy",function(){
2
+
3
+ it("true should be truthy'",function(){
4
+ expect(!!true).toBe(true);
5
+ });
6
+
7
+ });
8
+
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,18 @@
1
+ if(!this.jasmine){
2
+ document.write("<script type='text/javascript' src='" + jazrb_root + "/lib/jazrb/jasmine/jasmine.js'></script>");
3
+ document.write("<script type='text/javascript' src='" + jazrb_root + "/lib/jazrb/jasmine/TrivialReporter.js'></script>");
4
+ if(this.Envjs){
5
+ document.write("<script type='text/javascript' src='" + jazrb_root + "/lib/jazrb/jasmine/EnvjsReporter.js'></script>");
6
+ }
7
+ (function(){
8
+ var headID = document.getElementsByTagName("head")[0];
9
+ var cssNode = document.createElement('link');
10
+ cssNode.type = 'text/css';
11
+ cssNode.rel = 'stylesheet';
12
+ cssNode.href = jazrb_root + "/vendor/jasmine/lib/jasmine.css";
13
+ cssNode.media = 'screen';
14
+ headID.appendChild(cssNode);
15
+ })();
16
+ };
17
+ document.write("<script type='text/javascript' src='" + jazrb_root + "/vendor/jquery/dist/jquery.js'></script>");
18
+ document.write("<script type='text/javascript' src='" + jazrb_root + "/spec/spec_runner.js'></script>");
@@ -0,0 +1,143 @@
1
+ (function($){
2
+
3
+ var print = ( this.Envjs && this.print ) || ( this.console && this.console.debug ) || function(){};
4
+
5
+ var construct_path = function( source, result ) {
6
+ var levels = 0;
7
+ while( source.slice( source.length - 3 ) == "/.." ) {
8
+ levels++;
9
+ source = source.slice( 0, source.length - 3 );
10
+ }
11
+ var prefixes = [];
12
+ while(levels-->0) {
13
+ var slash = source.lastIndexOf("/");
14
+ if (slash<0) {
15
+ return "";
16
+ }
17
+ prefixes.unshift(source.slice(slash+1));
18
+ source = source.slice(0,slash);
19
+ }
20
+ return result+prefixes.join("/");
21
+ };
22
+
23
+ var spec_filename = function() {
24
+ var window = this;
25
+ path = window.location.toString();
26
+ var q = path.lastIndexOf("?");
27
+ if ( q >= 0 ) {
28
+ path = path.slice(0,q);
29
+ // print(path);
30
+ }
31
+ var slash = path.lastIndexOf("/");
32
+ if ( slash < 0 ) {
33
+ return path;
34
+ }
35
+ path = path.slice(slash+1);
36
+ var dot = path.lastIndexOf(".");
37
+ if ( dot > 0 ) {
38
+ path = path.slice(0,dot);
39
+ }
40
+ return path;
41
+ };
42
+
43
+ var find_specs = function() {
44
+ var path = window.location.toString();
45
+ var slash = path.lastIndexOf("/");
46
+ if ( slash < 0 ) {
47
+ return "";
48
+ }
49
+ var filename = path.slice(slash+1);
50
+ path = path.slice(0,slash);
51
+ path = construct_path( path + "/" + jazrb_root, jazrb_root + "/spec/" );
52
+ return [ path, spec_filename() ];
53
+ };
54
+
55
+ var load_file = function(filename) {
56
+ var contents = undefined;
57
+ $.ajax({ url: filename,
58
+ dataType: "text",
59
+ async: false,
60
+ error: function( xhr ) {
61
+ if(xhr.status != 404) {
62
+ throw "error on load_file xhr for " + filename + ": " + xhr.status;
63
+ }
64
+ },
65
+ success: function(data) { contents = data; } });
66
+ if ( contents ) {
67
+ return contents;
68
+ }
69
+
70
+ };
71
+
72
+ var load_first = function( fn, endings ) {
73
+ for (var i=0; i<endings.length; i++) {
74
+ var filename = fn + endings[i] + ".js";
75
+ if ( window.Envjs ) {
76
+ var root = window.location.toString();
77
+ var slash = root.lastIndexOf("/");
78
+ root = root.slice(0,slash+1);
79
+ root = root.replace(/^file:\/\//,"");
80
+ window.load(root + filename);
81
+ return;
82
+ } else {
83
+ var contents = load_file( filename );
84
+ if ( contents ) {
85
+ try {
86
+ eval(contents);
87
+ } catch(e) {
88
+ print("could not eval spec: ",e);
89
+ }
90
+ return;
91
+ }
92
+ }
93
+ }
94
+ };
95
+
96
+ var load_specs = function(specs) {
97
+ var path = specs[0], filename = specs[1];
98
+ var endings = [ "_spec", "Spec" ];
99
+ // Guess ending ... FIX: allow spec'ing of default order ...
100
+ if (filename.lastIndexOf("_") >= 0) {
101
+ endings = [ "_spec", "Spec" ];
102
+ } else if (filename.match(/[A-Z]/)) {
103
+ endings = [ "Spec", "_spec" ];
104
+ }
105
+ load_first( path+"/"+filename, endings );
106
+ };
107
+
108
+ var run_specs = function(){
109
+ if(!this.jazrb_root) {
110
+ return;
111
+ }
112
+ var specs = find_specs();
113
+ if (specs) {
114
+ load_specs(specs);
115
+ }
116
+ };
117
+
118
+ run_specs();
119
+
120
+ if(this.jasmine && !this.Envjs) {
121
+ var embedded = window.location != "about:blank";
122
+
123
+ var jasmineEnv = jasmine.getEnv();
124
+ jasmineEnv.updateInterval = 1000;
125
+
126
+ if(embedded) {
127
+ var trivialReporter = new jasmine.TrivialReporter();
128
+ jasmineEnv.addReporter(trivialReporter);
129
+ jasmineEnv.specFilter = function(spec) {
130
+ return trivialReporter.specFilter(spec);
131
+ };
132
+ }
133
+
134
+ if(window.Envjs && jasmine.EnvjsReporter){
135
+ jasmineEnv.addReporter(new jasmine.EnvjsReporter());
136
+ }
137
+
138
+ $(function() {
139
+ jasmineEnv.execute();
140
+ });
141
+ }
142
+
143
+ })(jQuery);
@@ -0,0 +1,7 @@
1
+ require 'test_helper'
2
+
3
+ class AutojazTest < Test::Unit::TestCase
4
+ should "probably rename this file and start testing for real" do
5
+ flunk "hey buddy, you should probably rename this file and start testing for real"
6
+ end
7
+ end
@@ -0,0 +1,10 @@
1
+ require 'rubygems'
2
+ require 'test/unit'
3
+ require 'shoulda'
4
+
5
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
6
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
7
+ require 'jazrb'
8
+
9
+ class Test::Unit::TestCase
10
+ end
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2008 Pivotal Labs
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.