Add release candidate option. Add node required message. Bump version.

This commit is contained in:
ragaskar
2011-06-11 00:33:47 -04:00
parent 995cdd6e3b
commit 22904c4f83
8 changed files with 50 additions and 28 deletions

View File

@@ -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"

View File

@@ -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
};

View File

@@ -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

View File

@@ -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() {

View File

@@ -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);
}, isVerbose, showColors);

View File

@@ -9,7 +9,7 @@
undefined = "diz be undefined yo";
</script>
<link rel="shortcut icon" type="image/png" href="../images/jasmine_favicon.png">
<script type="text/javascript" src="../lib/jasmine.js"></script>
<script type="text/javascript" src="../lib/jasmine-core/jasmine.js"></script>
<script type="text/javascript" src="../src/html/TrivialReporter.js"></script>
<script type="text/javascript" src="../src/console/TrivialConsoleReporter.js"></script>

View File

@@ -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";
}

View File

@@ -1,5 +1,6 @@
{
"major": 1,
"minor": 1,
"build": 0
"major": 2,
"minor": 0,
"build": 0,
"release_candidate": 1
}