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 Bundler::GemHelper.install_tasks
def sources def sources
dependencies = JSON.parse(File.read('src/SourcesList.json')).collect {|f| "src/core/#{f}"} 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 + Dir.glob('./src/core/*.js').reject {|f| dependencies.include?(f)}.sort
end end
def html_sources def html_sources
@@ -11,7 +11,7 @@ def html_sources
end end
def version_hash def version_hash
@version ||= JSON.parse(File.new("src/core/version.json").read) @version ||= JSON.parse(File.new("./src/core/version.json").read)
end end
def substitute_version(filename) def substitute_version(filename)
@@ -28,8 +28,8 @@ task :spec => ["jasmine:build", "spec:node", "spec:browser"]
namespace :spec do namespace :spec do
desc 'Run specs in Node.js' desc 'Run specs in Node.js'
task :node do task :node => "jasmine:require_node" do
raise "Node is required to run all jasmine specs" unless system("node spec/node_suite.js") system("node spec/node_suite.js")
end end
desc "Run specs in the default browser (MacOS only)" desc "Run specs in the default browser (MacOS only)"
@@ -40,6 +40,11 @@ end
namespace :jasmine do namespace :jasmine do
task :require_node do
raise "Node.js is required" if `which node` == ''
end
desc 'Prepares for distribution' desc 'Prepares for distribution'
task :dist => ['jasmine:build', task :dist => ['jasmine:build',
'jasmine:doc', 'jasmine:doc',
@@ -48,7 +53,7 @@ namespace :jasmine do
'jasmine:fill_index_downloads'] 'jasmine:fill_index_downloads']
desc 'Check jasmine sources for coding problems' desc 'Check jasmine sources for coding problems'
task :lint do task :lint => "jasmine:require_node" do
puts "Running JSHint via Node.js" puts "Running JSHint via Node.js"
system("node jshint/run.js") || exit(1) system("node jshint/run.js") || exit(1)
end end
@@ -72,7 +77,8 @@ jasmine.version_= {
"major": #{version['major'].to_json}, "major": #{version['major'].to_json},
"minor": #{version['minor'].to_json}, "minor": #{version['minor'].to_json},
"build": #{version['build'].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 end
@@ -114,7 +120,7 @@ jasmine.version_= {
FileUtils.rm_r "pages/jsdoc", :force => true FileUtils.rm_r "pages/jsdoc", :force => true
JsdocHelper::Rake::Task.new(:lambda_jsdoc) do |t| JsdocHelper::Rake::Task.new(:lambda_jsdoc) do |t|
t[:files] = jasmine_sources << html_sources t[:files] = sources << html_sources
t[:options] = "-a" t[:options] = "-a"
t[:out] = "pages/jsdoc" t[:out] = "pages/jsdoc"
# JsdocHelper bug: template must be relative to the JsdocHelper gem, ick # 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) FileUtils.cp_r File.join(root, 'example/.'), File.join(temp_dir)
substitute_version(File.join(temp_dir, "SpecRunner.html")) 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) FileUtils.mkdir_p(lib_dir)
{ {
"lib/jasmine.js" => "jasmine.js", "lib/jasmine.js" => "jasmine.js",
@@ -159,3 +165,5 @@ jasmine.version_= {
end end
end end
task :build => "jasmine:build"

View File

@@ -737,7 +737,12 @@ jasmine.Env.prototype.version = function () {
jasmine.Env.prototype.versionString = function() { jasmine.Env.prototype.versionString = function() {
if (jasmine.version_) { if (jasmine.version_) {
var version = this.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 { } else {
return "version unknown"; return "version unknown";
} }
@@ -2465,9 +2470,10 @@ jasmine.getGlobal().clearInterval = function(timeoutKey) {
jasmine.version_= { jasmine.version_= {
"major": 1, "major": 2,
"minor": 1, "minor": 0,
"build": 0, "build": 0,
"revision": 1307546962 "revision": 1307766763,
"release_candidate": 1
}; };

View File

@@ -1,7 +1,8 @@
module Jasmine module Jasmine
module Core module Core
require 'json' 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 = "#{VERSION_HASH['major']}.#{VERSION_HASH['minor']}.#{VERSION_HASH['build']}"
VERSION << ".rc#{VERSION_HASH['release_candidate']}" if VERSION_HASH['release_candidate']
end end
end end

View File

@@ -64,9 +64,10 @@ describe("jasmine.Env", function() {
"major": 1, "major": 1,
"minor": 9, "minor": 9,
"build": 7, "build": 7,
"release_candidate": "1",
"revision": 8 "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() { 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"; // undefined = "diz be undefined yo";
var jasmineGlobals = require('../lib/jasmine.js'); var jasmineGlobals = require('../lib/jasmine-core/jasmine.js');
for (var k in jasmineGlobals) { for (var k in jasmineGlobals) {
global[k] = jasmineGlobals[k]; global[k] = jasmineGlobals[k];
} }

View File

@@ -9,7 +9,7 @@
undefined = "diz be undefined yo"; undefined = "diz be undefined yo";
</script> </script>
<link rel="shortcut icon" type="image/png" href="../images/jasmine_favicon.png"> <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/html/TrivialReporter.js"></script>
<script type="text/javascript" src="../src/console/TrivialConsoleReporter.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() { jasmine.Env.prototype.versionString = function() {
if (jasmine.version_) { if (jasmine.version_) {
var version = this.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 { } else {
return "version unknown"; return "version unknown";
} }

View File

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