upjs-rails 0.11.0 → 0.11.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -1
- data/dist/up.js +138 -81
- data/dist/up.min.js +2 -2
- data/lib/assets/javascripts/up/boot.js.coffee +3 -0
- data/lib/assets/javascripts/up/browser.js.coffee +42 -26
- data/lib/assets/javascripts/up/flow.js.coffee +6 -4
- data/lib/assets/javascripts/up/history.js.coffee +1 -1
- data/lib/assets/javascripts/up/modal.js.coffee +4 -4
- data/lib/assets/javascripts/up/motion.js.coffee +6 -4
- data/lib/assets/javascripts/up/proxy.js.coffee +2 -1
- data/lib/assets/javascripts/up/util.js.coffee +61 -32
- data/lib/assets/javascripts/up.js.coffee +1 -10
- data/lib/upjs/rails/version.rb +1 -1
- data/spec_app/config/environments/development.rb +1 -1
- data/spec_app/spec/javascripts/helpers/reset_path.js.coffee +3 -2
- data/spec_app/spec/javascripts/up/flow_spec.js.coffee +1 -1
- data/spec_app/spec/javascripts/up/history_spec.js.coffee +53 -47
- data/spec_app/spec/javascripts/up/link_spec.js.coffee +1 -1
- data/spec_app/spec/javascripts/up/motion_spec.js.coffee +4 -4
- data/spec_app/spec/javascripts/up/proxy_spec.js.coffee +18 -9
- data/spec_app/vendor/assets/bower_components/jasmine/.bower.json +43 -7
- data/spec_app/vendor/assets/bower_components/jasmine/CONTRIBUTING.md +26 -17
- data/spec_app/vendor/assets/bower_components/jasmine/README.md +27 -18
- data/spec_app/vendor/assets/bower_components/jasmine/RELEASE.md +15 -5
- data/spec_app/vendor/assets/bower_components/jasmine/bower.json +41 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/console/console.js +27 -3
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/boot.js +10 -9
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/{src → lib/jasmine_examples}/Player.js +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/{src → lib/jasmine_examples}/Song.js +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine-html.js +76 -20
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine.css +15 -18
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine.js +1399 -694
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/json2.js +73 -62
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/node_boot.js +1 -1
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core.js +29 -31
- data/spec_app/vendor/assets/bower_components/jasmine/package.json +18 -7
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/.bower.json +11 -13
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/MIT.LICENSE +1 -1
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/README.markdown +198 -125
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/bower.json +9 -10
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/lib/mock-ajax.js +250 -59
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/package.json +9 -4
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/2.0.2.md +50 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/2.99.md +14 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.0.md +28 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.1.0.md +24 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.1.1.md +23 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.2.0.md +20 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/.bower.json +4 -4
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/bower.json +1 -1
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/dist/jasmine-fixture.js +4 -4
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/dist/jasmine-fixture.min.js +2 -2
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/.bower.json +4 -4
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/Gruntfile.js +17 -1
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/{MIT.LICENSE → LICENSE} +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/README.md +14 -9
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/bower.json +0 -1
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/lib/jasmine-jquery.js +35 -10
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/package.json +33 -24
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/fixture_with_checkbox_with_checked.html +6 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/suites/jasmine-jquery-spec.js +61 -1
- data/spec_app/vendor/assets/bower_components/jquery/.bower.json +5 -4
- data/spec_app/vendor/assets/bower_components/jquery/bower.json +2 -1
- data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.js +9 -4
- data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.min.js +4 -4
- data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.min.map +1 -1
- data/spec_app/vendor/assets/bower_components/jquery/src/core.js +6 -1
- metadata +14 -175
- data/spec_app/vendor/assets/bower_components/jasmine/.gitignore +0 -24
- data/spec_app/vendor/assets/bower_components/jasmine/.gitmodules +0 -3
- data/spec_app/vendor/assets/bower_components/jasmine/.jshintrc +0 -9
- data/spec_app/vendor/assets/bower_components/jasmine/.npmignore +0 -21
- data/spec_app/vendor/assets/bower_components/jasmine/.rspec +0 -1
- data/spec_app/vendor/assets/bower_components/jasmine/.travis.yml +0 -51
- data/spec_app/vendor/assets/bower_components/jasmine/Gemfile +0 -12
- data/spec_app/vendor/assets/bower_components/jasmine/Gruntfile.js +0 -53
- data/spec_app/vendor/assets/bower_components/jasmine/Rakefile +0 -18
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.0.0.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.1.0.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.2.0.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.3.0.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.3.1.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.0.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.1.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.2.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.3.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/compass.js +0 -10
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/compress.js +0 -66
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/concat.js +0 -61
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/jshint.js +0 -11
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/tasks/build_standalone.js +0 -31
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/tasks/version.js +0 -14
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/templates/SpecRunner.html.jst +0 -26
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/templates/licenseBanner.js.jst +0 -22
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/templates/version.rb.jst +0 -9
- data/spec_app/vendor/assets/bower_components/jasmine/images/__init__.py +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/jasmine-core.gemspec +0 -23
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/__init__.py +0 -1
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/boot/boot.js +0 -120
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/boot/node_boot.js +0 -19
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/core.py +0 -60
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/spec/PlayerSpec.js +0 -60
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/spec/SpecHelper.js +0 -15
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/spec/PlayerSpec.js +0 -58
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/spec/SpecHelper.js +0 -15
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/src/Player.js +0 -22
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/src/Song.js +0 -7
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/version.rb +0 -9
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core.rb +0 -53
- data/spec_app/vendor/assets/bower_components/jasmine/release_notes/2.0.1.md +0 -70
- data/spec_app/vendor/assets/bower_components/jasmine/release_notes/2.0.2.md +0 -25
- data/spec_app/vendor/assets/bower_components/jasmine/release_notes/20.md +0 -179
- data/spec_app/vendor/assets/bower_components/jasmine/setup.py +0 -47
- data/spec_app/vendor/assets/bower_components/jasmine/spec/console/ConsoleReporterSpec.js +0 -239
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/AnySpec.js +0 -46
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/CallTrackerSpec.js +0 -105
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ClockSpec.js +0 -445
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/DelayedFunctionSchedulerSpec.js +0 -246
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/EnvSpec.js +0 -85
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExceptionFormatterSpec.js +0 -63
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExceptionsSpec.js +0 -68
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExpectationResultSpec.js +0 -61
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExpectationSpec.js +0 -427
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/JsApiReporterSpec.js +0 -214
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/MockDateSpec.js +0 -199
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ObjectContainingSpec.js +0 -70
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/PrettyPrintSpec.js +0 -156
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/QueueRunnerSpec.js +0 -271
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ReportDispatcherSpec.js +0 -40
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SpecSpec.js +0 -260
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SpySpec.js +0 -67
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SpyStrategySpec.js +0 -111
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SuiteSpec.js +0 -216
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/TimerSpec.js +0 -31
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/UtilSpec.js +0 -28
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/integration/CustomMatchersSpec.js +0 -149
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/integration/EnvSpec.js +0 -506
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/integration/SpecRunningSpec.js +0 -306
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/matchersUtilSpec.js +0 -239
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeCloseToSpec.js +0 -51
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeDefinedSpec.js +0 -18
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeFalsySpec.js +0 -38
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeGreaterThanSpec.js +0 -20
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeLessThanSpec.js +0 -20
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeNaNSpec.js +0 -37
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeNullSpec.js +0 -17
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeSpec.js +0 -17
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeTruthySpec.js +0 -38
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeUndefinedSpec.js +0 -18
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toContainSpec.js +0 -26
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toEqualSpec.js +0 -28
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toHaveBeenCalledSpec.js +0 -47
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toHaveBeenCalledWithSpec.js +0 -66
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toMatchSpec.js +0 -34
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toThrowErrorSpec.js +0 -280
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toThrowSpec.js +0 -99
- data/spec_app/vendor/assets/bower_components/jasmine/spec/helpers/BrowserFlags.js +0 -23
- data/spec_app/vendor/assets/bower_components/jasmine/spec/helpers/defineJasmineUnderTest.js +0 -7
- data/spec_app/vendor/assets/bower_components/jasmine/spec/helpers/nodeDefineJasmineUnderTest.js +0 -33
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/HtmlReporterSpec.js +0 -616
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/HtmlSpecFilterSpec.js +0 -18
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/MatchersHtmlSpec.js +0 -37
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/PrettyPrintHtmlSpec.js +0 -15
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/QueryStringSpec.js +0 -43
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/ResultsNodeSpec.js +0 -62
- data/spec_app/vendor/assets/bower_components/jasmine/spec/javascripts/support/jasmine_selenium_runner.yml +0 -16
- data/spec_app/vendor/assets/bower_components/jasmine/spec/performance/large_object_test.js +0 -36
- data/spec_app/vendor/assets/bower_components/jasmine/spec/performance/performance_test.js +0 -10
- data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine-performance.json +0 -9
- data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine-performance.yml +0 -9
- data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine.json +0 -10
- data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine.yml +0 -25
- data/spec_app/vendor/assets/bower_components/jasmine/src/console/ConsoleReporter.js +0 -131
- data/spec_app/vendor/assets/bower_components/jasmine/src/console/requireConsole.js +0 -12
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Any.js +0 -36
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/CallTracker.js +0 -50
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Clock.js +0 -113
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/DelayedFunctionScheduler.js +0 -145
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Env.js +0 -341
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/ExceptionFormatter.js +0 -29
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Expectation.js +0 -107
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/ExpectationResult.js +0 -45
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/JsApiReporter.js +0 -73
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/MockDate.js +0 -81
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/ObjectContaining.js +0 -34
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/PrettyPrinter.js +0 -137
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/QueueRunner.js +0 -92
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/ReportDispatcher.js +0 -35
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Spec.js +0 -126
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/SpyStrategy.js +0 -51
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Suite.js +0 -92
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Timer.js +0 -22
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/base.js +0 -102
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/matchersUtil.js +0 -181
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/requireMatchers.js +0 -29
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBe.js +0 -13
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeCloseTo.js +0 -18
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeDefined.js +0 -13
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeFalsy.js +0 -13
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeGreaterThan.js +0 -15
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeLessThan.js +0 -14
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeNaN.js +0 -22
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeNull.js +0 -14
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeTruthy.js +0 -14
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeUndefined.js +0 -14
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toContain.js +0 -16
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toEqual.js +0 -20
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toHaveBeenCalled.js +0 -28
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toHaveBeenCalledWith.js +0 -33
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toMatch.js +0 -16
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toThrow.js +0 -46
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toThrowError.js +0 -156
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/requireCore.js +0 -39
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/requireInterface.js +0 -59
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/util.js +0 -44
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/HtmlReporter.js +0 -280
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/HtmlSpecFilter.js +0 -12
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/QueryString.js +0 -47
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/ResultsNode.js +0 -19
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/_HTMLReporter.scss +0 -355
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/jasmine.scss +0 -1
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/requireHtml.js +0 -6
- data/spec_app/vendor/assets/bower_components/jasmine/src/templates/example_project_jasmine_tags.html.erb +0 -3
- data/spec_app/vendor/assets/bower_components/jasmine/src/templates/version.js.erb +0 -7
- data/spec_app/vendor/assets/bower_components/jasmine/src/templates/version.rb.erb +0 -6
- data/spec_app/vendor/assets/bower_components/jasmine/src/version.js +0 -3
- data/spec_app/vendor/assets/bower_components/jasmine/travis-core-script.sh +0 -14
- data/spec_app/vendor/assets/bower_components/jasmine/travis-docs-script.sh +0 -5
- data/spec_app/vendor/assets/bower_components/jasmine/travis-node-script.sh +0 -6
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/Gruntfile.js +0 -63
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/boot.js +0 -11
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/fakeRequest.js +0 -262
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/mockAjax.js +0 -45
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/paramParser.js +0 -56
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/requestStub.js +0 -42
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/requestTracker.js +0 -51
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/requireAjax.js +0 -44
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/stubTracker.js +0 -24
@@ -22,12 +22,14 @@ up.util = (->
|
|
22
22
|
cached = true
|
23
23
|
cache = func(args...)
|
24
24
|
|
25
|
-
ajax = (
|
26
|
-
|
27
|
-
|
28
|
-
|
25
|
+
ajax = (request) ->
|
26
|
+
request = copy(request)
|
27
|
+
if request.selector
|
28
|
+
request.headers = {
|
29
|
+
"X-Up-Selector": request.selector
|
29
30
|
}
|
30
|
-
|
31
|
+
# Delegate to jQuery
|
32
|
+
$.ajax(request)
|
31
33
|
|
32
34
|
###*
|
33
35
|
@method up.util.isStandardPort
|
@@ -36,7 +38,6 @@ up.util = (->
|
|
36
38
|
isStandardPort = (protocol, port) ->
|
37
39
|
((port == "" || port == "80") && protocol == 'http:') || (port == "443" && protocol == 'https:')
|
38
40
|
|
39
|
-
|
40
41
|
###*
|
41
42
|
Normalizes URLs, relative paths and absolute paths to a full URL
|
42
43
|
that can be checked for equality with other normalized URL.
|
@@ -112,32 +113,52 @@ up.util = (->
|
|
112
113
|
element = document.createElement(tagName)
|
113
114
|
element.innerHTML = html if isPresent(html)
|
114
115
|
element
|
115
|
-
|
116
|
+
|
117
|
+
###*
|
118
|
+
@method up.debug
|
119
|
+
@protected
|
120
|
+
###
|
116
121
|
debug = (message, args...) ->
|
117
122
|
message = "[UP] #{message}"
|
118
|
-
|
123
|
+
up.browser.puts('debug', message, args...)
|
119
124
|
|
125
|
+
###*
|
126
|
+
@method up.warn
|
127
|
+
@protected
|
128
|
+
###
|
120
129
|
warn = (message, args...) ->
|
121
130
|
message = "[UP] #{message}"
|
122
|
-
|
131
|
+
up.browser.puts('warn', message, args...)
|
132
|
+
|
133
|
+
###*
|
134
|
+
Throws a fatal error with the given message.
|
135
|
+
|
136
|
+
- The error will be printed to the [error console](https://developer.mozilla.org/en-US/docs/Web/API/Console/error)
|
137
|
+
- An [`Error`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error) (exception) will be thrown, unwinding the current call stack
|
138
|
+
- The error message will be printed in a corner of the screen
|
139
|
+
|
140
|
+
\#\#\#\# Examples
|
123
141
|
|
142
|
+
up.error('Division by zero')
|
143
|
+
up.error('Unexpected result %o', result)
|
144
|
+
|
145
|
+
@method up.error
|
146
|
+
###
|
124
147
|
error = (args...) ->
|
125
148
|
args[0] = "[UP] #{args[0]}"
|
126
|
-
|
127
|
-
asString =
|
149
|
+
up.browser.puts('error', args...)
|
150
|
+
asString = evalConsoleTemplate(args...)
|
128
151
|
$error = presence($('.up-error')) || $('<div class="up-error"></div>').prependTo('body')
|
129
|
-
# $error = $('body')
|
130
152
|
$error.addClass('up-error')
|
131
153
|
$error.text(asString)
|
132
|
-
# alert "#{asString}\n\nOpen the developer console for details."
|
133
154
|
throw new Error(asString)
|
134
155
|
|
135
156
|
CONSOLE_PLACEHOLDERS = /\%[odisf]/g
|
136
157
|
|
137
|
-
|
158
|
+
evalConsoleTemplate = (args...) ->
|
138
159
|
message = args[0]
|
139
160
|
i = 0
|
140
|
-
maxLength =
|
161
|
+
maxLength = 80
|
141
162
|
message.replace CONSOLE_PLACEHOLDERS, ->
|
142
163
|
i += 1
|
143
164
|
arg = args[i]
|
@@ -146,11 +167,19 @@ up.util = (->
|
|
146
167
|
arg = arg.replace(/\s+/g, ' ')
|
147
168
|
arg = "#{arg.substr(0, maxLength)}…" if arg.length > maxLength
|
148
169
|
arg = "\"#{arg}\""
|
149
|
-
else if argType == '
|
170
|
+
else if argType == 'undefined'
|
171
|
+
# JSON.stringify(undefined) is actually undefined
|
172
|
+
arg = 'undefined'
|
173
|
+
else if argType == 'number' || argType == 'function'
|
150
174
|
arg = arg.toString()
|
151
175
|
else
|
152
176
|
arg = JSON.stringify(arg)
|
153
|
-
|
177
|
+
if arg.length > maxLength
|
178
|
+
arg = "#{arg.substr(0, maxLength)} …"
|
179
|
+
# For truncated objects or functions, add a trailing brace so
|
180
|
+
# long log lines are easier to parse visually
|
181
|
+
if argType == 'object' || argType == 'function'
|
182
|
+
arg += " }"
|
154
183
|
arg
|
155
184
|
|
156
185
|
createSelectorFromElement = ($element) ->
|
@@ -212,13 +241,6 @@ up.util = (->
|
|
212
241
|
|
213
242
|
trim = $.trim
|
214
243
|
|
215
|
-
keys = Object.keys || (object) ->
|
216
|
-
result = []
|
217
|
-
for key in object
|
218
|
-
if object.hasOwnProperty(key)
|
219
|
-
result.push(key)
|
220
|
-
result
|
221
|
-
|
222
244
|
each = (collection, block) ->
|
223
245
|
block(item, index) for item, index in collection
|
224
246
|
|
@@ -246,7 +268,7 @@ up.util = (->
|
|
246
268
|
|
247
269
|
isBlank = (object) ->
|
248
270
|
isMissing(object) || # null or undefined
|
249
|
-
(isObject(object) && keys(object).length == 0) ||
|
271
|
+
(isObject(object) && Object.keys(object).length == 0) ||
|
250
272
|
(object.length == 0) # String, Array, jQuery
|
251
273
|
|
252
274
|
presence = (object, checker = isPresent) ->
|
@@ -429,7 +451,7 @@ up.util = (->
|
|
429
451
|
# @private
|
430
452
|
###
|
431
453
|
temporaryCss = ($element, css, block) ->
|
432
|
-
oldCss = $element.css(keys(css))
|
454
|
+
oldCss = $element.css(Object.keys(css))
|
433
455
|
$element.css(css)
|
434
456
|
memo = -> $element.css(oldCss)
|
435
457
|
if block
|
@@ -488,7 +510,7 @@ up.util = (->
|
|
488
510
|
# the public API `up.motion.animate` already does this.
|
489
511
|
deferred = $.Deferred()
|
490
512
|
transition =
|
491
|
-
'transition-property': keys(lastFrame).join(', ')
|
513
|
+
'transition-property': Object.keys(lastFrame).join(', ')
|
492
514
|
'transition-duration': "#{opts.duration}ms"
|
493
515
|
'transition-delay': "#{opts.delay}ms"
|
494
516
|
'transition-timing-function': opts.easing
|
@@ -507,7 +529,7 @@ up.util = (->
|
|
507
529
|
deferred
|
508
530
|
else
|
509
531
|
$element.css(lastFrame)
|
510
|
-
|
532
|
+
resolvedDeferred()
|
511
533
|
|
512
534
|
ANIMATION_PROMISE_KEY = 'up-animation-promise'
|
513
535
|
|
@@ -720,7 +742,7 @@ up.util = (->
|
|
720
742
|
@param {String} [config.log]
|
721
743
|
A prefix for log entries printed by this cache object.
|
722
744
|
###
|
723
|
-
cache = (config) ->
|
745
|
+
cache = (config = {}) ->
|
724
746
|
|
725
747
|
store = undefined
|
726
748
|
|
@@ -734,6 +756,9 @@ up.util = (->
|
|
734
756
|
args[0] = "[#{config.log}] #{args[0]}"
|
735
757
|
debug(args...)
|
736
758
|
|
759
|
+
keys = ->
|
760
|
+
Object.keys(store)
|
761
|
+
|
737
762
|
maxSize = ->
|
738
763
|
if isMissing(config.size)
|
739
764
|
undefined
|
@@ -761,7 +786,7 @@ up.util = (->
|
|
761
786
|
key.toString()
|
762
787
|
|
763
788
|
trim = ->
|
764
|
-
storeKeys = copy(keys(
|
789
|
+
storeKeys = copy(keys())
|
765
790
|
size = maxSize()
|
766
791
|
if size && storeKeys.length > size
|
767
792
|
oldestKey = null
|
@@ -819,6 +844,7 @@ up.util = (->
|
|
819
844
|
set: set
|
820
845
|
remove: remove
|
821
846
|
clear: clear
|
847
|
+
keys: keys
|
822
848
|
|
823
849
|
config = (factoryOptions = {}) ->
|
824
850
|
hash =
|
@@ -856,7 +882,6 @@ up.util = (->
|
|
856
882
|
$match = undefined
|
857
883
|
while ($element = $element.parent()) && $element.length
|
858
884
|
position = $element.css('position')
|
859
|
-
console.log("Iteration element is %o with position %o", $element, position)
|
860
885
|
if position == 'absolute' || position == 'relative' || $element.is('body')
|
861
886
|
$match = $element
|
862
887
|
break
|
@@ -948,7 +973,6 @@ up.util = (->
|
|
948
973
|
clientSize: clientSize
|
949
974
|
only: only
|
950
975
|
trim: trim
|
951
|
-
keys: keys
|
952
976
|
resolvedPromise: resolvedPromise
|
953
977
|
resolvedDeferred: resolvedDeferred
|
954
978
|
resolvableWhen: resolvableWhen
|
@@ -961,5 +985,10 @@ up.util = (->
|
|
961
985
|
unwrapElement: unwrapElement
|
962
986
|
multiSelector: multiSelector
|
963
987
|
emptyJQuery: emptyJQuery
|
988
|
+
evalConsoleTemplate: evalConsoleTemplate
|
964
989
|
|
965
990
|
)()
|
991
|
+
|
992
|
+
up.error = up.util.error
|
993
|
+
up.warn = up.util.warn
|
994
|
+
up.debug = up.util.debug
|
@@ -15,13 +15,4 @@
|
|
15
15
|
#= require up/tooltip
|
16
16
|
#= require up/navigation
|
17
17
|
#= require up/slot
|
18
|
-
#=
|
19
|
-
|
20
|
-
up.browser.ensureRecentJquery()
|
21
|
-
|
22
|
-
if up.browser.isSupported()
|
23
|
-
|
24
|
-
up.browser.ensureConsoleExists()
|
25
|
-
|
26
|
-
up.bus.emit('framework:ready')
|
27
|
-
$(document).on 'ready', -> up.bus.emit('app:ready')
|
18
|
+
#= require up/boot
|
data/lib/upjs/rails/version.rb
CHANGED
@@ -25,7 +25,7 @@ Rails.application.configure do
|
|
25
25
|
# Debug mode disables concatenation and preprocessing of assets.
|
26
26
|
# This option may cause significant delays in view rendering with a large
|
27
27
|
# number of complex assets.
|
28
|
-
config.assets.debug =
|
28
|
+
config.assets.debug = false
|
29
29
|
|
30
30
|
# Asset digests allow you to set far-future HTTP expiration dates on all assets,
|
31
31
|
# yet still be able to expire them through the digest params.
|
@@ -122,7 +122,7 @@ describe 'up.flow', ->
|
|
122
122
|
@revealedHTML = ''
|
123
123
|
spyOn(up, 'reveal').and.callFake ($revealedElement) =>
|
124
124
|
@revealedHTML = $revealedElement.get(0).outerHTML
|
125
|
-
u.
|
125
|
+
u.resolvedDeferred()
|
126
126
|
|
127
127
|
it 'reveals a new element before it is being replaced', (done) ->
|
128
128
|
@request = up.replace('.middle', '/path', reveal: true)
|
@@ -14,14 +14,16 @@ describe 'up.history', ->
|
|
14
14
|
|
15
15
|
describe '[up-back]', ->
|
16
16
|
|
17
|
-
|
18
|
-
|
19
|
-
up
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
17
|
+
if up.browser.canPushState()
|
18
|
+
|
19
|
+
it 'sets an [up-href] attribute to the previous URL and sets the up-restore-scroll attribute to "true"', ->
|
20
|
+
up.history.push('/one')
|
21
|
+
up.history.push('/two')
|
22
|
+
$element = up.ready(affix('a[href="/three"][up-back]').text('text'))
|
23
|
+
expect($element.attr('href')).toEndWith('/three')
|
24
|
+
expect($element.attr('up-href')).toEndWith('/one')
|
25
|
+
expect($element.attr('up-restore-scroll')).toBe('')
|
26
|
+
expect($element.attr('up-follow')).toBe('')
|
25
27
|
|
26
28
|
it 'does not overwrite an existing up-href or up-restore-scroll attribute'
|
27
29
|
|
@@ -29,60 +31,64 @@ describe 'up.history', ->
|
|
29
31
|
|
30
32
|
describe 'scroll restauration', ->
|
31
33
|
|
32
|
-
|
33
|
-
|
34
|
+
if up.browser.canPushState()
|
35
|
+
|
36
|
+
afterEach ->
|
37
|
+
$('.viewport').remove()
|
38
|
+
|
39
|
+
it 'restores the scroll position of viewports when the user hits the back button', (done) ->
|
34
40
|
|
35
|
-
|
41
|
+
longContentHtml = """
|
42
|
+
<div class="viewport" style="width: 100px; height: 100px; overflow-y: scroll">
|
43
|
+
<div class="content" style="height: 1000px"></div>
|
44
|
+
</div>
|
45
|
+
"""
|
36
46
|
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
47
|
+
respond = (html) =>
|
48
|
+
@lastRequest().respondWith
|
49
|
+
status: 200
|
50
|
+
contentType: 'text/html'
|
51
|
+
responseText: longContentHtml
|
42
52
|
|
43
|
-
|
44
|
-
@lastRequest().respondWith
|
45
|
-
status: 200
|
46
|
-
contentType: 'text/html'
|
47
|
-
responseText: longContentHtml
|
53
|
+
$viewport = $(longContentHtml).appendTo(document.body)
|
48
54
|
|
49
|
-
|
55
|
+
up.layout.defaults(viewports: ['.viewport'])
|
56
|
+
up.history.defaults(popTargets: ['.viewport'])
|
50
57
|
|
51
|
-
|
52
|
-
up.history.defaults(popTargets: ['.viewport'])
|
58
|
+
$viewport.append(longContentHtml)
|
53
59
|
|
54
|
-
|
60
|
+
up.replace('.content', '/one')
|
61
|
+
respond()
|
55
62
|
|
56
|
-
|
57
|
-
respond()
|
58
|
-
$viewport.scrollTop(50)
|
63
|
+
$viewport.scrollTop(50)
|
59
64
|
|
60
|
-
|
61
|
-
|
62
|
-
$('.viewport').scrollTop(150)
|
65
|
+
up.replace('.content', '/two')
|
66
|
+
respond()
|
63
67
|
|
64
|
-
|
65
|
-
respond()
|
66
|
-
$('.viewport').scrollTop(250)
|
68
|
+
$('.viewport').scrollTop(150)
|
67
69
|
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
expect($('.viewport').scrollTop()).toBe(150)
|
70
|
+
up.replace('.content', '/three')
|
71
|
+
respond()
|
72
|
+
$('.viewport').scrollTop(250)
|
72
73
|
|
73
74
|
history.back()
|
74
75
|
@setTimer 50, =>
|
75
|
-
respond() # we need to respond since we've never requested /
|
76
|
-
expect($('.viewport').scrollTop()).toBe(
|
76
|
+
respond() # we need to respond since we've never requested /two with the popTarget
|
77
|
+
expect($('.viewport').scrollTop()).toBe(150)
|
77
78
|
|
78
|
-
history.
|
79
|
+
history.back()
|
79
80
|
@setTimer 50, =>
|
80
|
-
#
|
81
|
-
|
82
|
-
expect($('.viewport').scrollTop()).toBe(150)
|
81
|
+
respond() # we need to respond since we've never requested /one with the popTarget
|
82
|
+
expect($('.viewport').scrollTop()).toBe(50)
|
83
83
|
|
84
84
|
history.forward()
|
85
85
|
@setTimer 50, =>
|
86
|
-
|
87
|
-
|
88
|
-
|
86
|
+
# No need to respond since we requested /two with the popTarget
|
87
|
+
# when we went backwards
|
88
|
+
expect($('.viewport').scrollTop()).toBe(150)
|
89
|
+
|
90
|
+
history.forward()
|
91
|
+
@setTimer 50, =>
|
92
|
+
respond() # we need to respond since we've never requested /three with the popTarget
|
93
|
+
expect($('.viewport').scrollTop()).toBe(250)
|
94
|
+
done()
|
@@ -9,13 +9,13 @@ describe 'up.motion', ->
|
|
9
9
|
it 'animates the given element', (done) ->
|
10
10
|
$element = affix('.element').text('content')
|
11
11
|
opacity = -> Number($element.css('opacity'))
|
12
|
-
up.animate($element, 'fade-in', duration:
|
12
|
+
up.animate($element, 'fade-in', duration: 200, easing: 'linear')
|
13
13
|
|
14
14
|
@setTimer 0, ->
|
15
15
|
expect(opacity()).toBeAround(0.0, 0.25)
|
16
|
-
@setTimer 50, ->
|
17
|
-
expect(opacity()).toBeAround(0.5, 0.25)
|
18
16
|
@setTimer 100, ->
|
17
|
+
expect(opacity()).toBeAround(0.5, 0.25)
|
18
|
+
@setTimer 200, ->
|
19
19
|
expect(opacity()).toBeAround(1.0, 0.25)
|
20
20
|
done()
|
21
21
|
|
@@ -180,7 +180,7 @@ describe 'up.motion', ->
|
|
180
180
|
|
181
181
|
else
|
182
182
|
|
183
|
-
it "doesn't animate and hides the
|
183
|
+
it "doesn't animate and hides the old element instead", ->
|
184
184
|
$old = affix('.old').text('old content')
|
185
185
|
$new = affix('.new').text('new content')
|
186
186
|
up.morph($old, $new, 'cross-fade', duration: 1000)
|
@@ -77,7 +77,7 @@ describe 'up.proxy', ->
|
|
77
77
|
u.times 2, -> up.proxy.ajax(url: '/foo', method: method, cache: false)
|
78
78
|
expect(jasmine.Ajax.requests.count()).toEqual(2)
|
79
79
|
|
80
|
-
u.each ['POST', 'PUT', 'DELETE'
|
80
|
+
u.each ['POST', 'PUT', 'DELETE'], (method) ->
|
81
81
|
|
82
82
|
it "does not cache #{method} requests", ->
|
83
83
|
u.times 2, -> up.proxy.ajax(url: '/foo', method: method)
|
@@ -264,15 +264,24 @@ describe 'up.proxy', ->
|
|
264
264
|
|
265
265
|
describe 'up.proxy.preload', ->
|
266
266
|
|
267
|
-
|
268
|
-
$link = affix('a[href="/path"]')
|
269
|
-
up.proxy.preload($link)
|
270
|
-
expect(u.isPromise(up.proxy.get(url: '/path'))).toBe(true)
|
267
|
+
if up.browser.canPushState()
|
271
268
|
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
269
|
+
it "loads and caches the given link's destination", ->
|
270
|
+
$link = affix('a[href="/path"]')
|
271
|
+
up.proxy.preload($link)
|
272
|
+
expect(u.isPromise(up.proxy.get(url: '/path'))).toBe(true)
|
273
|
+
|
274
|
+
it "does not load a link whose method has side-effects", ->
|
275
|
+
$link = affix('a[href="/path"][data-method="post"]')
|
276
|
+
up.proxy.preload($link)
|
277
|
+
expect(up.proxy.get(url: '/path')).toBeUndefined()
|
278
|
+
|
279
|
+
else
|
280
|
+
|
281
|
+
it "does nothing", ->
|
282
|
+
$link = affix('a[href="/path"]')
|
283
|
+
up.proxy.preload($link)
|
284
|
+
expect(jasmine.Ajax.requests.count()).toBe(0)
|
276
285
|
|
277
286
|
describe 'up.proxy.get', ->
|
278
287
|
|
@@ -1,14 +1,50 @@
|
|
1
1
|
{
|
2
|
-
"name": "jasmine",
|
3
|
-
"
|
4
|
-
"
|
5
|
-
"
|
2
|
+
"name": "jasmine-core",
|
3
|
+
"version": "2.3.4",
|
4
|
+
"homepage": "http://jasmine.github.io",
|
5
|
+
"authors": [
|
6
|
+
"slackersoft <gregg@slackersoft.net>"
|
7
|
+
],
|
8
|
+
"description": "Official packaging of Jasmine's core files",
|
9
|
+
"keywords": [
|
10
|
+
"test",
|
11
|
+
"jasmine",
|
12
|
+
"tdd",
|
13
|
+
"bdd"
|
14
|
+
],
|
15
|
+
"license": "MIT",
|
16
|
+
"moduleType": "globals",
|
17
|
+
"main": "lib/jasmine-core/jasmine.js",
|
18
|
+
"ignore": [
|
19
|
+
"**/.*",
|
20
|
+
"dist",
|
21
|
+
"grunt",
|
22
|
+
"node_modules",
|
23
|
+
"pkg",
|
24
|
+
"release_notes",
|
25
|
+
"spec",
|
26
|
+
"src",
|
27
|
+
"Gemfile",
|
28
|
+
"Gemfile.lock",
|
29
|
+
"Rakefile",
|
30
|
+
"jasmine-core.gemspec",
|
31
|
+
"*.sh",
|
32
|
+
"*.py",
|
33
|
+
"Gruntfile.js",
|
34
|
+
"lib/jasmine-core.rb",
|
35
|
+
"lib/jasmine-core/boot/",
|
36
|
+
"lib/jasmine-core/spec",
|
37
|
+
"lib/jasmine-core/version.rb",
|
38
|
+
"lib/jasmine-core/*.py",
|
39
|
+
"sauce_connect.log"
|
40
|
+
],
|
41
|
+
"_release": "2.3.4",
|
6
42
|
"_resolution": {
|
7
43
|
"type": "version",
|
8
|
-
"tag": "v2.
|
9
|
-
"commit": "
|
44
|
+
"tag": "v2.3.4",
|
45
|
+
"commit": "651426b6583020e2f3fdae56d2873514963ba65e"
|
10
46
|
},
|
11
47
|
"_source": "git://github.com/pivotal/jasmine.git",
|
12
|
-
"_target": "~2
|
48
|
+
"_target": "~2",
|
13
49
|
"_originalSource": "jasmine"
|
14
50
|
}
|
@@ -1,23 +1,28 @@
|
|
1
1
|
# Developing for Jasmine Core
|
2
2
|
|
3
|
-
We welcome your contributions
|
3
|
+
We welcome your contributions! Thanks for helping make Jasmine a better project for everyone. Please review the backlog and discussion lists before starting work. What you're looking for may already have been done. If it hasn't, the community can help make your contribution better.
|
4
|
+
|
5
|
+
## Links
|
6
|
+
|
7
|
+
- [Jasmine Google Group](http://groups.google.com/group/jasmine-js)
|
8
|
+
- [Jasmine-dev Google Group](http://groups.google.com/group/jasmine-js-dev)
|
9
|
+
- [Jasmine on PivotalTracker](https://www.pivotaltracker.com/n/projects/10606)
|
4
10
|
|
5
11
|
## General Workflow
|
6
12
|
|
7
13
|
Please submit pull requests via feature branches using the semi-standard workflow of:
|
8
14
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
upstream
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
1. Create new Pull Request
|
15
|
+
```bash
|
16
|
+
git clone git@github.com:yourUserName/jasmine.git # Clone your fork
|
17
|
+
cd jasmine # Change directory
|
18
|
+
git remote add upstream https://github.com/jasmine/jasmine.git # Assign original repository to a remote named 'upstream'
|
19
|
+
git fetch upstream # Pull in changes not present in your local repository
|
20
|
+
git checkout -b my-new-feature # Create your feature branch
|
21
|
+
git commit -am 'Add some feature' # Commit your changes
|
22
|
+
git push origin my-new-feature # Push to the branch
|
23
|
+
```
|
19
24
|
|
20
|
-
We favor pull requests with very small, single commits with a single purpose.
|
25
|
+
Once you've pushed a feature branch to your forked repo, you're ready to open a pull request. We favor pull requests with very small, single commits with a single purpose.
|
21
26
|
|
22
27
|
## Background
|
23
28
|
|
@@ -67,7 +72,11 @@ To install the Ruby dependencies, you will need Ruby, Rubygems, and Bundler avai
|
|
67
72
|
|
68
73
|
$ bundle
|
69
74
|
|
70
|
-
...will install all of the Ruby dependencies.
|
75
|
+
...will install all of the Ruby dependencies. If the ffi gem fails to build its native extensions, you may need to manually install some system dependencies. On Ubuntu:
|
76
|
+
|
77
|
+
$ apt-get install gcc ruby ruby-dev libxml2 libxml2-dev libxslt1-dev
|
78
|
+
|
79
|
+
...should get you to the point that `bundle` can install everything.
|
71
80
|
|
72
81
|
To install the Node dependencies, you will need Node.js, Npm, and [Grunt](http://gruntjs.com/), the [grunt-cli](https://github.com/gruntjs/grunt-cli) and ensure that `grunt` is on your path.
|
73
82
|
|
@@ -94,13 +103,13 @@ Follow these tips and your pull request, patch, or suggestion is much more likel
|
|
94
103
|
|
95
104
|
### Running Specs
|
96
105
|
|
97
|
-
Jasmine uses the [Jasmine Ruby gem](http://github.com/
|
106
|
+
Jasmine uses the [Jasmine Ruby gem](http://github.com/jasmine/jasmine-gem) to test itself in browser.
|
98
107
|
|
99
108
|
$ rake jasmine
|
100
109
|
|
101
110
|
...and then visit `http://localhost:8888` to run specs.
|
102
111
|
|
103
|
-
Jasmine uses
|
112
|
+
Jasmine uses the [Jasmine NPM package](http://github.com/jasmine/jasmine-npm) to test itself in a Node.js/npm environment.
|
104
113
|
|
105
114
|
$ grunt execSpecsInNode
|
106
115
|
|
@@ -114,8 +123,8 @@ Jasmine uses Node.js with a custom runner to test outside of a browser.
|
|
114
123
|
|
115
124
|
## Submitting a Pull Request
|
116
125
|
1. Revert your changes to `jasmine.js` and `jasmine-html.js`
|
117
|
-
* We do this because `jasmine.js` and `jasmine-html.js` are auto-generated (as you've seen in the previous steps) and accepting multiple pull requests when this auto-generated file changes causes lots of headaches
|
118
|
-
1. When we accept your pull request, we will generate these files as a separate commit and merge the entire branch into master
|
126
|
+
* We do this because `jasmine.js` and `jasmine-html.js` are auto-generated (as you've seen in the previous steps) and accepting multiple pull requests when this auto-generated file changes causes lots of headaches
|
127
|
+
1. When we accept your pull request, we will generate these files as a separate commit and merge the entire branch into master
|
119
128
|
|
120
129
|
Note that we use Travis for Continuous Integration. We only accept green pull requests.
|
121
130
|
|