Commit Graph

25 Commits

Author SHA1 Message Date
Davis W. Frank & Sheel Choksi
3847557bbc Squashed spy refactor and new spy syntax
Jasmine spies now have a 'and' property which allows the user to
change the spy's execution strategy-- such as '.and.callReturn(4)'
and a 'calls' property which allows inspection of the calls a spy
has received.

* This is a breaking change *

There is a CallTracker that keeps track of all calls and arguments
and a SpyStrategy which determines what the spy should do when it
is called.
2013-07-22 14:29:52 -07:00
Sheel Choksi
61a1f93488 Older IE fixes
Still not green, but getting close. Summary of Older IE discrepancies:
- Older IE doesn't have apply/call on the timing functions
- Older IE doesn't allow applying falsy arguments
- Older IE doesn't allow setting onclick to undefined values
- Older IE doesn't have text property on dom nodes
2013-07-21 19:44:47 -07:00
Sheel Choksi
f68657f14e Have Jasmine HTML use the source files in specs
Similar to the changes in Jasmine core and console, this gets the
HTML specs of Jasmine using j$ instead of jasmine so that they use
the source files instead of the built distribution
2013-07-13 23:36:29 -07:00
Davis W. Frank and Sheel Choksi
179e54b9fb Refactor suite timing out of Env and into each Reporter
[finishes #45659879]
2013-07-03 09:30:05 -07:00
Sheel Choksi
ffdf1eb16d Add execution time elapsed to JsApiReporter
Since this information is desired in ConsoleReporter, HtmlReporter,
and now JsApiReporter, the executionTime is passed through in
jasmineDone from Env instead of making each reporter compute it.

Fixes #30, [Finishes #45659879]
2013-06-09 12:09:06 -07:00
Sheel Choksi
b4acdbd90a Remove use of getElementsByTagName and getElementsByClassName
Replace calls to these functions with querySelector and querySelectorAll
2013-06-03 19:24:53 -07:00
Davis W. Frank
3271dc8838 Last commit did not include self-test with Any and ObjectContaining in separate files. Fixed. 2013-06-02 22:16:30 -07:00
Davis W. Frank
aca43bd3a3 Squashed commit of work to make Jasmine a collection of isolated modules. Note now that in our test suite, "jasmine" now always refers to the build jasmine loaded from jasmine.js and "j$" always refers to the code in the src directories.
Also, dev_boot.js is now a copy of boot.js and has additional changes to load jasmine the second time, into the j$ reference.
2013-05-28 14:09:20 -07:00
Sheel Choksi
bf2adf55eb Add titles to specs in HtmlReporter
Each spec symbol contains a title, which is the full name of the
spec it represents.

[Finishes #48420677]
2013-04-28 21:35:12 -07:00
Dan Hansen and Davis W. Frank
7706512525 Delegate to originalJasmine for the version string in test 2013-03-03 16:19:56 -08:00
Dan Hansen and Davis W. Frank
e09fd40933 Move to grunt for building all distribution files.
* canonical version number of jasmine-core is now is package.json
* `grunt buildDistribution` builds jasmine.js, jasmine-html.js, jasmine.css and outputs them to the dist dir
* `grunt buildStandaloneDist` builds the example spec runner files and compresses them to dist/jasmine-VERSION.zip
* `grunt compass` compiles jasmine.css
* jasmine.Env handling of version is backwards compatible, but uses the version string directly (and nicely deprecated)
* Ruby/thor tasks that did the above deleted
2013-03-03 16:04:38 -08:00
Dan Hansen and Davis W. Frank
b7af6abca5 Support pending specs with:
- xit
- it with a null function body ( it("should be pending");
- calling pending() inside a spec
- having a spec without any expectations

Pending and Filtered specs now call Reporter interface specStarted so that reporting acts as expected.
Pending and Filtered spec names are present and styled in the HTML reporter

Using xit used to disable a spec. Disabling is now just when a spec is filtered out at run time (usually w/ the reporter).

Suites are still disabled with xdescribe and means its specs are never executed.
2013-03-01 10:41:25 -08:00
Dan Hansen and Davis W. Frank
d6da13a8dd Attempt at normalizing error stacks across browsers.
Failed expectations now have a `stack` property, remove `trace.stack`
2013-02-27 16:37:31 -08:00
Dan Hansen and Davis W. Frank
10b09ea9f5 Moved dependencies out of HtmlReporter and into boot.js - QueryString for spec filtering and UI around raising exceptions checkbox; New object for handling spec filtering for browsers; 2013-02-19 15:29:50 -08:00
Davis W. Frank
3fc79bac9e * Removed old Queue & Runner in favor of Suite using the new QueueRunner
* New reporter interface across all reporters
* xdescribe & xit now store disabled specs
* Rewrite of HtmlReporter to support new interface and be more performant
2013-02-19 11:45:05 -08:00
Rajan Agaskar
43552494ee Remove jasmine.CATCH_EXCEPTIONS
- HTMLReporters should be rewritten to make this sort of thing easier.
- Fix HTMLReporter try/catch switch
- We can't really call resultCallback & throw, so that's been reverted
  for now.
2012-12-07 17:26:59 -08:00
Davis W. Frank & Rajan Agaskar
c2e1327f39 Permit HTMLReporter to render every 250ms
- This is necessary for the user to see spec results fill-in
  progressively.
- There is a slight performance loss. 250 - 500ms seems to deliver the
  same amount of loss. This is still at parity with Jasmine 1.x
2012-12-07 14:49:19 -08:00
Davis W. Frank & Rajan Agaskar
74f928fd54 Re-add Mock Clock behavior as global 'clock'
- Use clock.install, clock.tick...
- Add unit coverage.
- Fixes old bug in function scheduler
2012-12-07 10:04:47 -08:00
Davis W. Frank & Rajan Agaskar
a1011e7748 Rewrite Spec & allow Jasmine to be namespaced
- THere seems to be a performance regression. Large test suites may
  throw
- Regressions: Mock Clock won't install correctly, async specs are
  temporarily not supported.
- Async spec runs/waits interface is gone. Blocks are gone.
- Move most global usage into jasmine.Env constructor.
- Remove optional 'Jasmine running' from HtmlReporter -- caused
  NS_FACTORY_ERROR in firefox when tested
2012-12-06 09:10:24 -08:00
Davis W. Frank & Rajan Agaskar
779dee1211 Remove results from Queue
- consequently, Runner & Suite no longer have results.
- Results come back to reporters from Spec, we should not have a need to
  walk them later via suite/runner (in fact, no reporter used results on
  suite/runner -- only bad tests)
- Remove/clean up tests relying on #results
- Remove integration tests that duplicate already tested behavior
2012-12-03 15:57:16 -08:00
Davis W. Frank & Rajan Agaskar
cd3a0c854b buildExpectationResult now returns a data object.
- Meant for passing to reporters.
2012-12-03 15:46:29 -08:00
Davis W. Frank & Rajan Agaskar
e2af08e0a6 Move most jasmine global usage into boot.
- thor build scripts broken for now.
2012-12-03 15:46:26 -08:00
Davis W. Frank
4a1a2123a3 Fixes https://github.com/pivotal/jasmine-gem/issues/65 and https://www.pivotaltracker.com/story/show/24902023 2012-02-25 11:58:54 -08:00
Davis W. Frank & Sean Durham
ad4f48dcd4 Add new HTMLReporter 2011-11-04 14:43:19 -07:00
Davis W. Frank
86b095e5a4 Src & Spec dirs now have same structure; console/, core/, and html/ 2011-06-08 18:30:35 -07:00