diff --git a/Rakefile b/Rakefile
index 386f79e3..42aa4910 100644
--- a/Rakefile
+++ b/Rakefile
@@ -2,8 +2,8 @@ require 'bundler'
Bundler::GemHelper.install_tasks
def sources
- dependencies = JSON.parse(File.read('src/SourcesList.json')).collect {|f| "src/core/#{f}"}
- dependencies + Dir.glob('src/core/*.js').reject {|f| dependencies.include?(f)}.sort
+ dependencies = JSON.parse(File.read('./src/SourcesList.json')).collect {|f| "./src/core/#{f}"}
+ dependencies + Dir.glob('./src/core/*.js').reject {|f| dependencies.include?(f)}.sort
end
def html_sources
@@ -11,7 +11,7 @@ def html_sources
end
def version_hash
- @version ||= JSON.parse(File.new("src/core/version.json").read)
+ @version ||= JSON.parse(File.new("./src/core/version.json").read)
end
def substitute_version(filename)
@@ -28,8 +28,8 @@ task :spec => ["jasmine:build", "spec:node", "spec:browser"]
namespace :spec do
desc 'Run specs in Node.js'
- task :node do
- raise "Node is required to run all jasmine specs" unless system("node spec/node_suite.js")
+ task :node => "jasmine:require_node" do
+ system("node spec/node_suite.js")
end
desc "Run specs in the default browser (MacOS only)"
@@ -40,6 +40,11 @@ end
namespace :jasmine do
+ task :require_node do
+ raise "Node.js is required" if `which node` == ''
+ end
+
+
desc 'Prepares for distribution'
task :dist => ['jasmine:build',
'jasmine:doc',
@@ -48,7 +53,7 @@ namespace :jasmine do
'jasmine:fill_index_downloads']
desc 'Check jasmine sources for coding problems'
- task :lint do
+ task :lint => "jasmine:require_node" do
puts "Running JSHint via Node.js"
system("node jshint/run.js") || exit(1)
end
@@ -72,7 +77,8 @@ jasmine.version_= {
"major": #{version['major'].to_json},
"minor": #{version['minor'].to_json},
"build": #{version['build'].to_json},
- "revision": #{Time.now.to_i}
+ "revision": #{Time.now.to_i},
+ "release_candidate": #{version['release_candidate'].to_json}
};
}
end
@@ -114,7 +120,7 @@ jasmine.version_= {
FileUtils.rm_r "pages/jsdoc", :force => true
JsdocHelper::Rake::Task.new(:lambda_jsdoc) do |t|
- t[:files] = jasmine_sources << html_sources
+ t[:files] = sources << html_sources
t[:options] = "-a"
t[:out] = "pages/jsdoc"
# JsdocHelper bug: template must be relative to the JsdocHelper gem, ick
@@ -136,7 +142,7 @@ jasmine.version_= {
FileUtils.cp_r File.join(root, 'example/.'), File.join(temp_dir)
substitute_version(File.join(temp_dir, "SpecRunner.html"))
- lib_dir = File.join(temp_dir, "lib/jasmine-#{jasmine_version}")
+ lib_dir = File.join(temp_dir, "lib", "jasmine-#{jasmine_version}")
FileUtils.mkdir_p(lib_dir)
{
"lib/jasmine.js" => "jasmine.js",
@@ -159,3 +165,5 @@ jasmine.version_= {
end
end
+
+task :build => "jasmine:build"
diff --git a/lib/jasmine-core/jasmine.js b/lib/jasmine-core/jasmine.js
index 73db05db..4b00f9fd 100644
--- a/lib/jasmine-core/jasmine.js
+++ b/lib/jasmine-core/jasmine.js
@@ -737,7 +737,12 @@ jasmine.Env.prototype.version = function () {
jasmine.Env.prototype.versionString = function() {
if (jasmine.version_) {
var version = this.version();
- return version.major + "." + version.minor + "." + version.build + " revision " + version.revision;
+ var versionString = version.major + "." + version.minor + "." + version.build;
+ if (version.release_candidate) {
+ versionString += ".rc" + version.release_candidate
+ }
+ versionString += " revision " + version.revision
+ return versionString;
} else {
return "version unknown";
}
@@ -991,7 +996,7 @@ jasmine.Block = function(env, func, spec) {
this.spec = spec;
};
-jasmine.Block.prototype.execute = function(onComplete) {
+jasmine.Block.prototype.execute = function(onComplete) {
try {
this.func.apply(this.spec);
} catch (e) {
@@ -1031,7 +1036,7 @@ jasmine.JsApiReporter.prototype.summarize_ = function(suiteOrSpec) {
type: isSuite ? 'suite' : 'spec',
children: []
};
-
+
if (isSuite) {
var children = suiteOrSpec.children();
for (var i = 0; i < children.length; i++) {
@@ -1647,7 +1652,7 @@ jasmine.PrettyPrinter.prototype.format = function(value) {
jasmine.PrettyPrinter.prototype.iterateObject = function(obj, fn) {
for (var property in obj) {
if (property == '__Jasmine_been_here_before__') continue;
- fn(property, obj.__lookupGetter__ ? (obj.__lookupGetter__(property) !== jasmine.undefined &&
+ fn(property, obj.__lookupGetter__ ? (obj.__lookupGetter__(property) !== jasmine.undefined &&
obj.__lookupGetter__(property) !== null) : false);
}
};
@@ -1750,7 +1755,7 @@ jasmine.Queue.prototype.next_ = function() {
while (goAgain) {
goAgain = false;
-
+
if (self.index < self.blocks.length && !this.abort) {
var calledSynchronously = true;
var completedSynchronously = false;
@@ -1788,7 +1793,7 @@ jasmine.Queue.prototype.next_ = function() {
if (completedSynchronously) {
onComplete();
}
-
+
} else {
self.running = false;
if (self.onComplete) {
@@ -2465,9 +2470,10 @@ jasmine.getGlobal().clearInterval = function(timeoutKey) {
jasmine.version_= {
- "major": 1,
- "minor": 1,
+ "major": 2,
+ "minor": 0,
"build": 0,
- "revision": 1307546962
+ "revision": 1307766763,
+ "release_candidate": 1
};
-
+
diff --git a/lib/jasmine-core/version.rb b/lib/jasmine-core/version.rb
index f3f0e1f4..d698d472 100644
--- a/lib/jasmine-core/version.rb
+++ b/lib/jasmine-core/version.rb
@@ -1,7 +1,8 @@
module Jasmine
module Core
require 'json'
- VERSION_HASH = JSON.parse(File.new(File.join(File.dirname(__FILE__), "..", "..", "src/version.json")).read);
+ VERSION_HASH = JSON.parse(File.new(File.join(File.dirname(__FILE__), "..", "..", "src", "core", "version.json")).read);
VERSION = "#{VERSION_HASH['major']}.#{VERSION_HASH['minor']}.#{VERSION_HASH['build']}"
+ VERSION << ".rc#{VERSION_HASH['release_candidate']}" if VERSION_HASH['release_candidate']
end
end
diff --git a/spec/core/EnvSpec.js b/spec/core/EnvSpec.js
index be7a9fd8..3bd67031 100644
--- a/spec/core/EnvSpec.js
+++ b/spec/core/EnvSpec.js
@@ -64,9 +64,10 @@ describe("jasmine.Env", function() {
"major": 1,
"minor": 9,
"build": 7,
+ "release_candidate": "1",
"revision": 8
};
- expect(env.versionString()).toEqual("1.9.7 revision 8");
+ expect(env.versionString()).toEqual("1.9.7.rc1 revision 8");
});
it("should return a nice string when version is unknown", function() {
diff --git a/spec/node_suite.js b/spec/node_suite.js
index 1bbc4a0e..695c0ac0 100644
--- a/spec/node_suite.js
+++ b/spec/node_suite.js
@@ -6,7 +6,7 @@ var path = require('path');
// undefined = "diz be undefined yo";
-var jasmineGlobals = require('../lib/jasmine.js');
+var jasmineGlobals = require('../lib/jasmine-core/jasmine.js');
for (var k in jasmineGlobals) {
global[k] = jasmineGlobals[k];
}
@@ -124,4 +124,4 @@ jasmine.executeSpecs(domIndependentSpecs, function(runner, log) {
} else {
process.exit(1);
}
-}, isVerbose, showColors);
\ No newline at end of file
+}, isVerbose, showColors);
diff --git a/spec/runner.html b/spec/runner.html
index aeb23493..5e161643 100644
--- a/spec/runner.html
+++ b/spec/runner.html
@@ -9,7 +9,7 @@
undefined = "diz be undefined yo";
-
+
diff --git a/src/core/Env.js b/src/core/Env.js
index f469a2e0..b188a4a7 100644
--- a/src/core/Env.js
+++ b/src/core/Env.js
@@ -53,7 +53,12 @@ jasmine.Env.prototype.version = function () {
jasmine.Env.prototype.versionString = function() {
if (jasmine.version_) {
var version = this.version();
- return version.major + "." + version.minor + "." + version.build + " revision " + version.revision;
+ var versionString = version.major + "." + version.minor + "." + version.build;
+ if (version.release_candidate) {
+ versionString += ".rc" + version.release_candidate
+ }
+ versionString += " revision " + version.revision
+ return versionString;
} else {
return "version unknown";
}
diff --git a/src/core/version.json b/src/core/version.json
index a7c2dbdd..c899920f 100644
--- a/src/core/version.json
+++ b/src/core/version.json
@@ -1,5 +1,6 @@
{
- "major": 1,
- "minor": 1,
- "build": 0
+ "major": 2,
+ "minor": 0,
+ "build": 0,
+ "release_candidate": 1
}