smparkes-jazrb 0.0.4 → 0.0.8

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 (35) hide show
  1. data/README.rdoc +96 -12
  2. data/bin/jazrb +161 -4
  3. data/doc/jasmine/files.html +15 -1
  4. data/doc/jasmine/index.html +9 -1
  5. data/doc/jasmine/symbols/_global_.html +3 -1
  6. data/doc/jasmine/symbols/jasmine.Block.html +3 -1
  7. data/doc/jasmine/symbols/jasmine.Env.html +3 -1
  8. data/doc/jasmine/symbols/jasmine.EnvjsReporter.html +3 -1
  9. data/doc/jasmine/symbols/jasmine.JsApiReporter.html +3 -1
  10. data/doc/jasmine/symbols/jasmine.Matchers.html +3 -1
  11. data/doc/jasmine/symbols/jasmine.MultiReporter.html +3 -1
  12. data/doc/jasmine/symbols/jasmine.NestedResults.html +3 -1
  13. data/doc/jasmine/symbols/jasmine.Reporter.html +3 -1
  14. data/doc/jasmine/symbols/jasmine.Runner.html +3 -1
  15. data/doc/jasmine/symbols/jasmine.Spec.html +3 -1
  16. data/doc/jasmine/symbols/jasmine.Spy.html +3 -1
  17. data/doc/jasmine/symbols/jasmine.Suite.html +3 -1
  18. data/doc/jasmine/symbols/jasmine.XMLReporter.html +328 -0
  19. data/doc/jasmine/symbols/jasmine.html +3 -1
  20. data/doc/jasmine/symbols/jasmine.util.html +3 -1
  21. data/doc/jasmine/symbols/src/lib_XMLReporter.js.html +208 -0
  22. data/doc/jasmine/symbols/src/lib_jasmine-0.10.0.js.html +1 -1
  23. data/lib/jazrb/intro.js +2 -3
  24. data/lib/jazrb/jasmine/XMLReporter.js +200 -0
  25. data/lib/jazrb/jasmine/jasmine-0.10.0.js +1 -1
  26. data/lib/jazrb/jasmine/jasmine.js +1 -1
  27. data/lib/jazrb/options.rb +18 -0
  28. data/spec/example/hello_world_spec.js +29 -0
  29. data/spec/example/nested/HelloWorldSpec.js +13 -0
  30. data/spec/example/nested/SpecHelper.js +1 -0
  31. data/spec/example/plain_spec.js +8 -0
  32. data/spec/example/spec_helper.js +1 -0
  33. data/spec/spec_helper.js +18 -0
  34. data/spec/spec_runner.js +134 -0
  35. metadata +13 -2
@@ -0,0 +1,18 @@
1
+ require 'optparse'
2
+
3
+ $jazrb_verbose = false
4
+ $jazrb_xml = false
5
+
6
+ parser = OptionParser.new do |o|
7
+
8
+ o.on("-v","--verbose") do
9
+ $jazrb_verbose = true
10
+ end
11
+
12
+ o.on("-x","--xml") do
13
+ $jazrb_xml = true
14
+ end
15
+
16
+ end
17
+
18
+ $jazrb_args = parser.parse ARGV
@@ -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).toBeTrue();
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,134 @@
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
+ var contents = load_file( filename );
76
+ if ( contents ) {
77
+ try {
78
+ eval(contents);
79
+ } catch(e) {
80
+ print("could not eval spec: ",e);
81
+ }
82
+ return;
83
+ }
84
+ }
85
+ };
86
+
87
+ var load_specs = function(specs) {
88
+ var path = specs[0], filename = specs[1];
89
+ var endings = [ "_spec", "Spec" ];
90
+ // Guess ending ... FIX: allow spec'ing of default order ...
91
+ if (filename.lastIndexOf("_") >= 0) {
92
+ endings = [ "_spec", "Spec" ];
93
+ } else if (filename.match(/[A-Z]/)) {
94
+ endings = [ "Spec", "_spec" ];
95
+ }
96
+ load_first( path+"/"+filename, endings );
97
+ };
98
+
99
+ var run_specs = function(){
100
+ if(!this.jazrb_root) {
101
+ return;
102
+ }
103
+ var specs = find_specs();
104
+ if (specs) {
105
+ load_specs(specs);
106
+ }
107
+ };
108
+
109
+ run_specs();
110
+
111
+ if(this.jasmine && !this.Envjs) {
112
+ var embedded = window.location != "about:blank";
113
+
114
+ var jasmineEnv = jasmine.getEnv();
115
+ jasmineEnv.updateInterval = 1000;
116
+
117
+ if(embedded) {
118
+ var trivialReporter = new jasmine.TrivialReporter();
119
+ jasmineEnv.addReporter(trivialReporter);
120
+ jasmineEnv.specFilter = function(spec) {
121
+ return trivialReporter.specFilter(spec);
122
+ };
123
+ }
124
+
125
+ if(window.Envjs && jasmine.EnvjsReporter){
126
+ jasmineEnv.addReporter(new jasmine.EnvjsReporter());
127
+ }
128
+
129
+ $(function() {
130
+ jasmineEnv.execute();
131
+ });
132
+ }
133
+
134
+ })(jQuery);
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smparkes-jazrb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steven Parkes
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-11-03 00:00:00 -08:00
12
+ date: 2009-11-05 00:00:00 -08:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -61,10 +61,12 @@ files:
61
61
  - doc/jasmine/symbols/jasmine.Spec.html
62
62
  - doc/jasmine/symbols/jasmine.Spy.html
63
63
  - doc/jasmine/symbols/jasmine.Suite.html
64
+ - doc/jasmine/symbols/jasmine.XMLReporter.html
64
65
  - doc/jasmine/symbols/jasmine.html
65
66
  - doc/jasmine/symbols/jasmine.util.html
66
67
  - doc/jasmine/symbols/src/lib_EnvjsReporter.js.html
67
68
  - doc/jasmine/symbols/src/lib_TrivialReporter.js.html
69
+ - doc/jasmine/symbols/src/lib_XMLReporter.js.html
68
70
  - doc/jasmine/symbols/src/lib_consolex.js.html
69
71
  - doc/jasmine/symbols/src/lib_jasmine-0.10.0.js.html
70
72
  - doc/jasmine/symbols/src/lib_jasmine-0.9.0.js.html
@@ -75,11 +77,20 @@ files:
75
77
  - lib/jazrb/intro.js
76
78
  - lib/jazrb/jasmine/EnvjsReporter.js
77
79
  - lib/jazrb/jasmine/TrivialReporter.js
80
+ - lib/jazrb/jasmine/XMLReporter.js
78
81
  - lib/jazrb/jasmine/consolex.js
79
82
  - lib/jazrb/jasmine/jasmine-0.10.0.js
80
83
  - lib/jazrb/jasmine/jasmine.js
81
84
  - lib/jazrb/jasmine/json2.js
85
+ - lib/jazrb/options.rb
82
86
  - lib/jazrb/outro.js
87
+ - spec/example/hello_world_spec.js
88
+ - spec/example/nested/HelloWorldSpec.js
89
+ - spec/example/nested/SpecHelper.js
90
+ - spec/example/plain_spec.js
91
+ - spec/example/spec_helper.js
92
+ - spec/spec_helper.js
93
+ - spec/spec_runner.js
83
94
  - test/jazrb_test.rb
84
95
  - test/test_helper.rb
85
96
  - LICENSE