merge
This commit is contained in:
4
.gitignore
vendored
4
.gitignore
vendored
@@ -5,3 +5,7 @@ site/
|
|||||||
.bundle/
|
.bundle/
|
||||||
.pairs
|
.pairs
|
||||||
.rvmrc
|
.rvmrc
|
||||||
|
*.gem
|
||||||
|
.bundle
|
||||||
|
Gemfile.lock
|
||||||
|
pkg/*
|
||||||
|
|||||||
9
Gemfile
9
Gemfile
@@ -1,8 +1,3 @@
|
|||||||
source :rubygems
|
source :rubygems
|
||||||
|
gem "term-ansicolor", :require => "term/ansicolor"
|
||||||
gem "json_pure", "~>1.4.3"
|
gemspec
|
||||||
gem "frank"
|
|
||||||
gem "haml"
|
|
||||||
gem "term-ansicolor"
|
|
||||||
gem "ragaskar-jsdoc_helper"
|
|
||||||
gem "rake", "0.8.7"
|
|
||||||
|
|||||||
35
Gemfile.lock
35
Gemfile.lock
@@ -1,35 +0,0 @@
|
|||||||
GEM
|
|
||||||
remote: http://rubygems.org/
|
|
||||||
specs:
|
|
||||||
daemons (1.0.10)
|
|
||||||
frank (1.0.8)
|
|
||||||
haml (>= 3.0)
|
|
||||||
mongrel (>= 1.2.0.pre2)
|
|
||||||
net-scp (>= 1.0)
|
|
||||||
net-ssh (>= 2.0)
|
|
||||||
rack (>= 1.0)
|
|
||||||
tilt (= 0.9)
|
|
||||||
gem_plugin (0.2.3)
|
|
||||||
haml (3.1.2)
|
|
||||||
json_pure (1.4.6)
|
|
||||||
mongrel (1.2.0.pre2)
|
|
||||||
daemons (~> 1.0.10)
|
|
||||||
gem_plugin (~> 0.2.3)
|
|
||||||
net-scp (1.0.4)
|
|
||||||
net-ssh (>= 1.99.1)
|
|
||||||
net-ssh (2.1.4)
|
|
||||||
rack (1.3.0)
|
|
||||||
ragaskar-jsdoc_helper (0.0.2.1)
|
|
||||||
rake (0.8.7)
|
|
||||||
term-ansicolor (1.0.5)
|
|
||||||
tilt (0.9)
|
|
||||||
|
|
||||||
PLATFORMS
|
|
||||||
ruby
|
|
||||||
|
|
||||||
DEPENDENCIES
|
|
||||||
frank
|
|
||||||
json_pure (~> 1.4.3)
|
|
||||||
ragaskar-jsdoc_helper
|
|
||||||
rake (= 0.8.7)
|
|
||||||
term-ansicolor
|
|
||||||
9
Rakefile
9
Rakefile
@@ -1,6 +1,8 @@
|
|||||||
require 'json'
|
require "bundler"
|
||||||
require 'tilt'
|
Bundler::GemHelper.install_tasks
|
||||||
require 'term/ansicolor'
|
require "term/ansicolor"
|
||||||
|
require "json"
|
||||||
|
require "tilt"
|
||||||
|
|
||||||
Dir["#{File.dirname(__FILE__)}/tasks/**/*.rb"].each do |file|
|
Dir["#{File.dirname(__FILE__)}/tasks/**/*.rb"].each do |file|
|
||||||
require file
|
require file
|
||||||
@@ -29,4 +31,3 @@ class String
|
|||||||
end
|
end
|
||||||
|
|
||||||
Term::ANSIColor.coloring = STDOUT.isatty
|
Term::ANSIColor.coloring = STDOUT.isatty
|
||||||
|
|
||||||
|
|||||||
@@ -1,21 +0,0 @@
|
|||||||
# Project-specific configuration for CruiseControl.rb
|
|
||||||
Project.configure do |project|
|
|
||||||
|
|
||||||
# Send email notifications about broken and fixed builds to email1@your.site, email2@your.site (default: send to nobody)
|
|
||||||
# project.email_notifier.emails = ['email1@your.site', 'email2@your.site']
|
|
||||||
|
|
||||||
# Set email 'from' field to john@doe.com:
|
|
||||||
# project.email_notifier.from = 'john@doe.com'
|
|
||||||
|
|
||||||
# Build the project by invoking rake task 'custom'
|
|
||||||
project.rake_task = 'jasmine:test:ci:saucelabs'
|
|
||||||
|
|
||||||
# Build the project by invoking shell script "build_my_app.sh". Keep in mind that when the script is invoked,
|
|
||||||
# current working directory is <em>[cruise data]</em>/projects/your_project/work, so if you do not keep build_my_app.sh
|
|
||||||
# in version control, it should be '../build_my_app.sh' instead
|
|
||||||
#project.build_command = 'cp ../saucelabs.yml .'
|
|
||||||
|
|
||||||
# Ping Subversion for new revisions every 5 minutes (default: 30 seconds)
|
|
||||||
# project.scheduler.polling_interval = 5.minutes
|
|
||||||
|
|
||||||
end
|
|
||||||
23
jasmine-core.gemspec
Normal file
23
jasmine-core.gemspec
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
# -*- encoding: utf-8 -*-
|
||||||
|
$:.push File.expand_path("../lib", __FILE__)
|
||||||
|
require "jasmine-core/version"
|
||||||
|
|
||||||
|
Gem::Specification.new do |s|
|
||||||
|
s.name = "jasmine-core"
|
||||||
|
s.version = Jasmine::Core::VERSION
|
||||||
|
s.platform = Gem::Platform::RUBY
|
||||||
|
s.authors = ["Rajan Agaskar", "Davis Frank", "Christian Williams"]
|
||||||
|
s.summary = %q{JavaScript BDD framework}
|
||||||
|
s.description = %q{Test your JavaScript without any framework dependencies, in any environment, and with a nice descriptive syntax.}
|
||||||
|
s.email = %q{jasmine-js@googlegroups.com}
|
||||||
|
s.homepage = "http://pivotal.github.com/jasmine"
|
||||||
|
s.rubyforge_project = "jasmine-core"
|
||||||
|
|
||||||
|
s.files = Dir.glob("./lib/**/*") + Dir.glob("./lib/jasmine-core/spec/**/*.js")
|
||||||
|
s.require_paths = ["lib"]
|
||||||
|
s.add_development_dependency "term-ansicolor"
|
||||||
|
s.add_development_dependency "json_pure", ">= 1.4.3"
|
||||||
|
s.add_development_dependency "frank"
|
||||||
|
s.add_development_dependency "haml"
|
||||||
|
s.add_development_dependency "ragaskar-jsdoc_helper"
|
||||||
|
end
|
||||||
36
lib/jasmine-core.rb
Normal file
36
lib/jasmine-core.rb
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
module Jasmine
|
||||||
|
module Core
|
||||||
|
class << self
|
||||||
|
def path
|
||||||
|
File.join(File.dirname(__FILE__), "jasmine-core")
|
||||||
|
end
|
||||||
|
|
||||||
|
def js_files
|
||||||
|
(["jasmine.js"] + Dir.glob(File.join(path, "*.js"))).map { |f| File.basename(f) }.uniq
|
||||||
|
end
|
||||||
|
|
||||||
|
SPEC_TYPES = ["core", "html", "node"]
|
||||||
|
|
||||||
|
def core_spec_files
|
||||||
|
spec_files("core")
|
||||||
|
end
|
||||||
|
|
||||||
|
def html_spec_files
|
||||||
|
spec_files("html")
|
||||||
|
end
|
||||||
|
|
||||||
|
def node_spec_files
|
||||||
|
spec_files("node")
|
||||||
|
end
|
||||||
|
|
||||||
|
def spec_files(type)
|
||||||
|
raise ArgumentError.new("Unrecognized spec type") unless SPEC_TYPES.include?(type)
|
||||||
|
(Dir.glob(File.join(path, "spec", type, "*.js"))).map { |f| File.join("spec", type, File.basename(f)) }.uniq
|
||||||
|
end
|
||||||
|
|
||||||
|
def css_files
|
||||||
|
Dir.glob(File.join(path, "*.css")).map { |f| File.basename(f) }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -740,11 +740,12 @@ jasmine.Env.prototype.versionString = function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var version = this.version();
|
var version = this.version();
|
||||||
var dotted_version = version.major + "." + version.minor + "." + version.build;
|
var versionString = version.major + "." + version.minor + "." + version.build;
|
||||||
if (version.rc) {
|
if (version.release_candidate) {
|
||||||
dotted_version += ".rc" + version.rc;
|
versionString += ".rc" + version.release_candidate
|
||||||
}
|
}
|
||||||
return dotted_version + " revision " + version.revision;
|
versionString += " revision " + version.revision;
|
||||||
|
return versionString;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -2471,6 +2472,6 @@ jasmine.version_= {
|
|||||||
"major": 1,
|
"major": 1,
|
||||||
"minor": 1,
|
"minor": 1,
|
||||||
"build": 0,
|
"build": 0,
|
||||||
"revision": 1308359945,
|
"revision": 1308584756,
|
||||||
"rc": 1
|
"rc": 1
|
||||||
};
|
};
|
||||||
1
lib/jasmine-core/spec
Symbolic link
1
lib/jasmine-core/spec
Symbolic link
@@ -0,0 +1 @@
|
|||||||
|
../../spec
|
||||||
8
lib/jasmine-core/version.rb
Normal file
8
lib/jasmine-core/version.rb
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
module Jasmine
|
||||||
|
module Core
|
||||||
|
require 'json'
|
||||||
|
VERSION_HASH = JSON.parse(File.new(File.join(File.dirname(__FILE__), "..", "..", "src", "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
|
||||||
@@ -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() {
|
||||||
|
|||||||
@@ -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];
|
||||||
}
|
}
|
||||||
@@ -124,4 +124,4 @@ jasmine.executeSpecs(domIndependentSpecs, function(runner, log) {
|
|||||||
} else {
|
} else {
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
}, isVerbose, showColors);
|
}, isVerbose, showColors);
|
||||||
|
|||||||
@@ -6,8 +6,8 @@
|
|||||||
|
|
||||||
<link rel="shortcut icon" type="image/png" href="../images/jasmine_favicon.png">
|
<link rel="shortcut icon" type="image/png" href="../images/jasmine_favicon.png">
|
||||||
|
|
||||||
<link href="../lib/jasmine.css" rel="stylesheet"/>
|
<link href="../lib/jasmine-core/jasmine.css" rel="stylesheet"/>
|
||||||
<script type="text/javascript" src="../lib/jasmine.js"></script>
|
<script type="text/javascript" src="../lib/jasmine-core/jasmine.js"></script>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
// yes, really keep this here to keep us honest, but only for jasmine's own runner! [xw]
|
// yes, really keep this here to keep us honest, but only for jasmine's own runner! [xw]
|
||||||
undefined = "diz be undefined yo";
|
undefined = "diz be undefined yo";
|
||||||
@@ -15,33 +15,33 @@
|
|||||||
|
|
||||||
|
|
||||||
<!-- include source files here... -->
|
<!-- include source files here... -->
|
||||||
<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/ConsoleReporter.js"></script>
|
<script type="text/javascript" src=".././src/console/ConsoleReporter.js"></script>
|
||||||
|
|
||||||
<!-- include spec files here... -->
|
<!-- include spec files here... -->
|
||||||
<script type="text/javascript" src="../spec/core/BaseSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/BaseSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/CustomMatchersSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/CustomMatchersSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/EnvSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/EnvSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/ExceptionsSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/ExceptionsSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/JsApiReporterSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/JsApiReporterSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/MatchersSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/MatchersSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/MockClockSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/MockClockSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/MultiReporterSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/MultiReporterSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/NestedResultsSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/NestedResultsSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/PrettyPrintSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/PrettyPrintSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/QueueSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/QueueSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/ReporterSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/ReporterSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/RunnerSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/RunnerSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/SpecRunningSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/SpecRunningSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/SpecSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/SpecSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/SpySpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/SpySpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/SuiteSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/SuiteSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/UtilSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/UtilSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/core/WaitsForBlockSpec.js"></script>
|
<script type="text/javascript" src=".././spec/core/WaitsForBlockSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/html/MatchersHtmlSpec.js"></script>
|
<script type="text/javascript" src=".././spec/html/MatchersHtmlSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/html/PrettyPrintHtmlSpec.js"></script>
|
<script type="text/javascript" src=".././spec/html/PrettyPrintHtmlSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/html/TrivialReporterSpec.js"></script>
|
<script type="text/javascript" src=".././spec/html/TrivialReporterSpec.js"></script>
|
||||||
<script type="text/javascript" src="../spec/console/ConsoleReporterSpec.js"></script>
|
<script type="text/javascript" src=".././spec/console/ConsoleReporterSpec.js"></script>
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
(function() {
|
(function() {
|
||||||
|
|||||||
@@ -56,11 +56,12 @@ jasmine.Env.prototype.versionString = function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var version = this.version();
|
var version = this.version();
|
||||||
var dotted_version = version.major + "." + version.minor + "." + version.build;
|
var versionString = version.major + "." + version.minor + "." + version.build;
|
||||||
if (version.rc) {
|
if (version.release_candidate) {
|
||||||
dotted_version += ".rc" + version.rc;
|
versionString += ".rc" + version.release_candidate
|
||||||
}
|
}
|
||||||
return dotted_version + " revision " + version.revision;
|
versionString += " revision " + version.revision;
|
||||||
|
return versionString;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -2,5 +2,5 @@ jasmine.version_= {
|
|||||||
"major": <%= major %>,
|
"major": <%= major %>,
|
||||||
"minor": <%= minor %>,
|
"minor": <%= minor %>,
|
||||||
"build": <%= build %>,
|
"build": <%= build %>,
|
||||||
"revision": <%= revision %><%= %Q{,\n "rc": #{rc}} if rc %>
|
"revision": <%= revision %><%= %Q{,\n "rc": #{release_candidate}} if release_candidate %>
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,6 +2,6 @@ jasmine.version_= {
|
|||||||
"major": 1,
|
"major": 1,
|
||||||
"minor": 1,
|
"minor": 1,
|
||||||
"build": 0,
|
"build": 0,
|
||||||
"revision": 1308359945,
|
"revision": 1308584756,
|
||||||
"rc": 1
|
"rc": 1
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,5 +2,5 @@
|
|||||||
"major": 1,
|
"major": 1,
|
||||||
"minor": 1,
|
"minor": 1,
|
||||||
"build": 0,
|
"build": 0,
|
||||||
"rc": 1
|
"release_candidate": 1
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,10 +2,10 @@ desc "Build core jasmine.js"
|
|||||||
task :build_dist => [:lint, :write_version_file] do
|
task :build_dist => [:lint, :write_version_file] do
|
||||||
puts 'Building Jasmine distribution from source'.cyan
|
puts 'Building Jasmine distribution from source'.cyan
|
||||||
|
|
||||||
concat_into('lib/jasmine.js') { core_sources + version_source_file }
|
concat_into('lib/jasmine-core/jasmine.js') { core_sources + version_source_file }
|
||||||
concat_into('lib/jasmine-html.js') { html_sources }
|
concat_into('lib/jasmine-core/jasmine-html.js') { html_sources }
|
||||||
|
|
||||||
FileUtils.cp('src/html/jasmine.css', 'lib/jasmine.css')
|
FileUtils.cp('src/html/jasmine.css', 'lib/jasmine-core/jasmine.css')
|
||||||
end
|
end
|
||||||
|
|
||||||
def concat_into(output_file, &block)
|
def concat_into(output_file, &block)
|
||||||
@@ -18,7 +18,7 @@ def concat_into(output_file, &block)
|
|||||||
end
|
end
|
||||||
|
|
||||||
desc 'Check jasmine sources for coding problems'
|
desc 'Check jasmine sources for coding problems'
|
||||||
task :lint do
|
task :lint => :require_node do
|
||||||
puts "Running JSHint via Node.js".cyan
|
puts "Running JSHint via Node.js".cyan
|
||||||
system("node jshint/run.js") || exit(1)
|
system("node jshint/run.js") || exit(1)
|
||||||
end
|
end
|
||||||
@@ -30,7 +30,7 @@ task :write_version_file do
|
|||||||
scope = OpenStruct.new(:major => version_hash["major"],
|
scope = OpenStruct.new(:major => version_hash["major"],
|
||||||
:minor => version_hash["minor"],
|
:minor => version_hash["minor"],
|
||||||
:build => version_hash["build"],
|
:build => version_hash["build"],
|
||||||
:rc => version_hash["rc"],
|
:release_candidate => version_hash["release_candidate"],
|
||||||
:revision => Time.now.to_i)
|
:revision => Time.now.to_i)
|
||||||
|
|
||||||
File.open('src/version.js', 'w+') do |f|
|
File.open('src/version.js', 'w+') do |f|
|
||||||
@@ -41,4 +41,4 @@ end
|
|||||||
|
|
||||||
def version_source_file
|
def version_source_file
|
||||||
Dir.glob('src/version.js')
|
Dir.glob('src/version.js')
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
require 'ostruct'
|
require 'ostruct'
|
||||||
|
|
||||||
desc "build the browser spec for Jasmine core based on current tree"
|
#build the browser spec for Jasmine core based on current tree
|
||||||
task :build_runner_html do
|
task :build_runner_html do
|
||||||
template = Tilt.new('spec/templates/runner.html.erb')
|
template = Tilt.new('spec/templates/runner.html.erb')
|
||||||
|
|
||||||
File.open('spec/runner.html', 'w+') do |f|
|
File.open('spec/runner.html', 'w+') do |f|
|
||||||
scope = OpenStruct.new(:title => "Jasmine Spec Runner: Jasmine Core",
|
scope = OpenStruct.new(:title => "Jasmine Spec Runner: Jasmine Core",
|
||||||
:favicon => favicon,
|
:favicon => favicon,
|
||||||
:jasmine_tags => core_jasmine_tags,
|
:jasmine_tags => jasmine_tags,
|
||||||
:source_tags => other_source_file_tags,
|
:source_tags => source_tags,
|
||||||
:spec_file_tags => spec_file_tags)
|
:spec_file_tags => spec_file_tags)
|
||||||
f << template.render(scope)
|
f << template.render(scope)
|
||||||
end
|
end
|
||||||
@@ -20,10 +20,10 @@ def favicon
|
|||||||
HTML
|
HTML
|
||||||
end
|
end
|
||||||
|
|
||||||
def core_jasmine_tags
|
def jasmine_tags
|
||||||
tags = %Q{<link href="../lib/jasmine.css" rel="stylesheet"/>}
|
tags = %Q{<link href="../lib/jasmine-core/jasmine.css" rel="stylesheet"/>}
|
||||||
tags << "\n "
|
tags << "\n "
|
||||||
tags << script_tags_for("../lib/jasmine.js")
|
tags << script_tags_for("../lib/jasmine-core/jasmine.js")
|
||||||
tags << "\n "
|
tags << "\n "
|
||||||
tags << undefined_catch
|
tags << undefined_catch
|
||||||
tags
|
tags
|
||||||
@@ -38,7 +38,7 @@ def undefined_catch
|
|||||||
HTML
|
HTML
|
||||||
end
|
end
|
||||||
|
|
||||||
def other_source_file_tags
|
def source_tags
|
||||||
other_files = html_sources + console_sources
|
other_files = html_sources + console_sources
|
||||||
script_tags_for other_files.collect { |f| "../#{f}" }
|
script_tags_for other_files.collect { |f| "../#{f}" }
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,45 +1,45 @@
|
|||||||
require 'json'
|
require 'json'
|
||||||
|
|
||||||
def core_sources
|
def core_sources
|
||||||
first_sources = JSON.parse(File.read('src/SourcesList.json')).collect { |f| "src/core/#{f}" }
|
first_sources = JSON.parse(File.read('./src/SourcesList.json')).collect { |f| "./src/core/#{f}" }
|
||||||
|
|
||||||
remaining_sources = Dir.glob('src/core/*.js').reject { |f| first_sources.include?(f) }.sort
|
remaining_sources = Dir.glob('./src/core/*.js').reject { |f| first_sources.include?(f) }.sort
|
||||||
|
|
||||||
first_sources + remaining_sources
|
first_sources + remaining_sources
|
||||||
end
|
end
|
||||||
|
|
||||||
def html_sources
|
def html_sources
|
||||||
Dir.glob('src/html/*.js')
|
Dir.glob('./src/html/*.js')
|
||||||
end
|
end
|
||||||
|
|
||||||
def console_sources
|
def console_sources
|
||||||
Dir.glob('src/console/*.js')
|
Dir.glob('./src/console/*.js')
|
||||||
end
|
end
|
||||||
|
|
||||||
def core_specfiles
|
def core_specfiles
|
||||||
Dir.glob('spec/core/*.js')
|
Dir.glob('./spec/core/*.js')
|
||||||
end
|
end
|
||||||
|
|
||||||
def html_specfiles
|
def html_specfiles
|
||||||
Dir.glob('spec/html/*.js')
|
Dir.glob('./spec/html/*.js')
|
||||||
end
|
end
|
||||||
|
|
||||||
def console_specfiles
|
def console_specfiles
|
||||||
Dir.glob('spec/console/*.js')
|
Dir.glob('./spec/console/*.js')
|
||||||
end
|
end
|
||||||
|
|
||||||
def version_string
|
def version_string
|
||||||
version = "#{version_hash['major']}.#{version_hash['minor']}.#{version_hash['build']}"
|
version = "#{version_hash['major']}.#{version_hash['minor']}.#{version_hash['build']}"
|
||||||
version += ".rc#{version_hash['rc']}" if version_hash['rc']
|
version += ".rc#{version_hash['release_candidate']}" if version_hash['release_candidate']
|
||||||
version
|
version
|
||||||
end
|
end
|
||||||
|
|
||||||
def version_hash
|
def version_hash
|
||||||
@version ||= JSON.parse(File.new("src/version.json").read);
|
@version ||= JSON.parse(File.new("./src/version.json").read);
|
||||||
end
|
end
|
||||||
|
|
||||||
def script_tags_for(files)
|
def script_tags_for(files)
|
||||||
script_tag = Tilt::new('spec/templates/script_tag.html.erb')
|
script_tag = Tilt::new('./spec/templates/script_tag.html.erb')
|
||||||
|
|
||||||
srcs = (files.is_a?(String) ? [files] : files)
|
srcs = (files.is_a?(String) ? [files] : files)
|
||||||
srcs.inject([]) do |tags, f|
|
srcs.inject([]) do |tags, f|
|
||||||
@@ -47,4 +47,4 @@ def script_tags_for(files)
|
|||||||
tags << script_tag.render(scope)
|
tags << script_tag.render(scope)
|
||||||
tags
|
tags
|
||||||
end.join("\n ")
|
end.join("\n ")
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ task "spec:browser" => [:count_specs, :build_runner_html] do
|
|||||||
system("open spec/runner.html")
|
system("open spec/runner.html")
|
||||||
end
|
end
|
||||||
|
|
||||||
desc "Count number of specs in Jasmine core"
|
#Count number of specs in Jasmine core
|
||||||
task :count_specs do
|
task :count_specs do
|
||||||
core_specs_count = count_specs_in(Dir.glob('spec/core/*.js'))
|
core_specs_count = count_specs_in(Dir.glob('spec/core/*.js'))
|
||||||
console_spec_count = count_specs_in(Dir.glob('spec/console/*.js'))
|
console_spec_count = count_specs_in(Dir.glob('spec/console/*.js'))
|
||||||
|
|||||||
@@ -14,15 +14,16 @@ task :standalone => [:require_pages_submodule, :build_spec_runner_html] do
|
|||||||
FileUtils.mkdir_p(temp_dir)
|
FileUtils.mkdir_p(temp_dir)
|
||||||
|
|
||||||
root = File.expand_path(File.join(File.dirname(__FILE__), '..'))
|
root = File.expand_path(File.join(File.dirname(__FILE__), '..'))
|
||||||
FileUtils.cp_r File.join(root, 'example/.'), File.join(temp_dir)
|
FileUtils.mkdir_p(File.join(root, "example"))
|
||||||
|
FileUtils.cp_r(File.join(root, 'example/.'), File.join(temp_dir))
|
||||||
|
|
||||||
lib_dir = File.join(temp_dir, "lib/jasmine-#{version_string}")
|
lib_dir = File.join(temp_dir, "lib/jasmine-#{version_string}")
|
||||||
FileUtils.mkdir_p(lib_dir)
|
FileUtils.mkdir_p(lib_dir)
|
||||||
{
|
{
|
||||||
"images/jasmine_favicon.png" => "jasmine_favicon.png",
|
"images/jasmine_favicon.png" => "jasmine_favicon.png",
|
||||||
"lib/jasmine.js" => "jasmine.js",
|
"lib/jasmine-core/jasmine.js" => "jasmine.js",
|
||||||
"lib/jasmine-html.js" => "jasmine-html.js",
|
"lib/jasmine-core/jasmine-html.js" => "jasmine-html.js",
|
||||||
"src/html/jasmine.css" => "jasmine.css",
|
"lib/jasmine-core/jasmine.css" => "jasmine.css",
|
||||||
"MIT.LICENSE" => "MIT.LICENSE"
|
"MIT.LICENSE" => "MIT.LICENSE"
|
||||||
}.each_pair do |src, dest|
|
}.each_pair do |src, dest|
|
||||||
FileUtils.cp(File.join(root, src), File.join(lib_dir, dest))
|
FileUtils.cp(File.join(root, src), File.join(lib_dir, dest))
|
||||||
@@ -35,11 +36,11 @@ task :standalone => [:require_pages_submodule, :build_spec_runner_html] do
|
|||||||
exec "cd #{zip_root} && zip #{zip_file_name} -r . -x .[a-zA-Z0-9]*"
|
exec "cd #{zip_root} && zip #{zip_file_name} -r . -x .[a-zA-Z0-9]*"
|
||||||
end
|
end
|
||||||
|
|
||||||
desc "Build SpecRunner.html for standalone dist example project"
|
#Build SpecRunner.html for standalone dist example project
|
||||||
task :build_spec_runner_html do
|
task :build_spec_runner_html do
|
||||||
template = Tilt.new('spec/templates/runner.html.erb')
|
template = Tilt.new('spec/templates/runner.html.erb')
|
||||||
|
|
||||||
File.open('example/SpecRunner.html', 'w+') do |f|
|
File.open('lib/jasmine-core/example/SpecRunner.html', 'w+') do |f|
|
||||||
scope = OpenStruct.new(:title => "Jasmine Spec Runner",
|
scope = OpenStruct.new(:title => "Jasmine Spec Runner",
|
||||||
:favicon => example_favicon,
|
:favicon => example_favicon,
|
||||||
:jasmine_tags => example_jasmine_tags,
|
:jasmine_tags => example_jasmine_tags,
|
||||||
@@ -81,4 +82,4 @@ task :protect_current_dist_zip do
|
|||||||
zip_file_name = File.join(dist_dir, "jasmine-standalone-#{version_string}.zip")
|
zip_file_name = File.join(dist_dir, "jasmine-standalone-#{version_string}.zip")
|
||||||
|
|
||||||
raise "STOPPED: #{zip_file_name} already exists" if File.exist?(zip_file_name)
|
raise "STOPPED: #{zip_file_name} already exists" if File.exist?(zip_file_name)
|
||||||
end
|
end
|
||||||
|
|||||||
5
tasks/version.rb
Normal file
5
tasks/version.rb
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
task :version do
|
||||||
|
require 'pp'
|
||||||
|
pp version_hash
|
||||||
|
pp version_string
|
||||||
|
end
|
||||||
Reference in New Issue
Block a user