1
0
mirror of https://github.com/tc39/test262.git synced 2025-06-03 05:30:48 +02:00

102 Commits

Author SHA1 Message Date
Norbert Lindenberg
d71ffa59d5 Added new tests for chapters 10 to 13 of the ECMAScript Internationalization API Specification. 2012-08-26 20:50:24 -07:00
Norbert Lindenberg
1af2425075 Added new tests for chapters 6 and 9 of ECMAScript Internationalization API Specification.
- Removed a few old test cases that were redundant with new, more comprehensive ones.
- Added testIntl.js as standard include for all console tests in test262.py – see related bug 574.
- Added .jshintrc file for settings for the JSHint tool.
2012-08-26 20:49:25 -07:00
Norbert Lindenberg
8cad7d03ce Added tests for requirements imposed on the built-in objects of the ECMAScript Internationalization API Specification by the introduction of chapter 15 of the ECMAScript Language Specification.
- Removed some old tests that were redundant with the new tests.
- Added testBuiltInObject.js as standard include for all console tests in test262.py – see related bug 574.
2012-08-26 20:48:49 -07:00
Norbert Lindenberg
9f4a513496 Merged changes. 2012-08-22 16:12:54 -07:00
Norbert Lindenberg
9a4b4011f8 Got test402 web site into usable shape. Unified headers of test262/402 sites.
- Added table of contents for ECMA-402.
- Added ability to load the right table of contents into results display.
- Added meaningful text to test402 web page.
- Updated test262 web pages for 5.1 edition of ECMA-262.
- Unified headers of test262/402 web pages to ECMAScript <area> <test>.
- Replaced text logos with styled text.
- Decapitalized some text; fixed a typo; expanded an abbreviation.
- Fixed a few issues found by W3 HTML validator.
2012-07-18 12:32:54 -07:00
t-adamre
385b4f7163 Add capability to run chapters individually from the website 2012-06-12 14:54:30 -07:00
David Fugate
87be1bf6ec https://bugs.ecmascript.org/show_bug.cgi?id=65 fixed. 2012-03-28 16:05:03 -07:00
David Fugate
d6634f8e10 Fixed https://bugs.ecmascript.org/show_bug.cgi?id=293. ConstructDate cannot be
salvaged (e.g., need locale info to properly predict whether we're subject to
DST).
2012-03-26 13:50:38 -07:00
David Fugate
0612ad7bb3 Added a LICENSE file to the root of the enlistment.
All Microsoft-contributed *.js and *.py sources now have Ecma's copyright header.
2012-02-29 14:23:47 -08:00
David Fugate
4fb5071cd4 Migrated latest external\contributions\Microsoft\ietcLatest changes over to test\suite\*. 2012-02-27 15:46:23 -08:00
David Fugate
e0d156d38c Implemented the following work items:
- https://bugs.ecmascript.org/show_bug.cgi?id=44
- https://bugs.ecmascript.org/show_bug.cgi?id=45
2012-02-22 11:53:29 -08:00
David Fugate
5df3134fac Fixed https://bugs.ecmascript.org/show_bug.cgi?id=207. 2011-11-11 11:40:05 -08:00
Mark Miller
13b63c5486 test262 console runner working! 2011-09-30 08:24:38 -04:00
Mark Miller
64db10aa2d Just reformatting to 80 columns 2011-09-30 03:59:50 -04:00
David Fugate
ffa85c2584 Moved all test helper functions into sta.js; removed sputnikLib.js.
Laid down the groundwork for a console-based test runner.
2011-09-26 16:12:46 -07:00
David Fugate
352d86b8ed Support not-NotEarlyError as well. 2011-09-25 17:05:32 -07:00
David Fugate
d5bf95c628 Made exception type checking looser: window.onerror isn't spec'ed to give us the
exact error type, but we should get the '.message' property.
2011-09-25 10:47:34 -07:00
David Fugate
2b0122ef82 All tests are globally scoped tests - Part I. 2011-09-24 16:35:45 -07:00
David Fugate
5be3b44a3d Removed all traces of test pre-req requirements.
Generate the 'id' property from the 'path' property.
2011-09-24 11:46:26 -07:00
David Fugate
4fcd9a836d https://bugs.ecmascript.org/show_bug.cgi?id=34. Fixed 2011-09-23 16:27:46 -07:00
David Fugate
382f5c17e6 https://bugs.ecmascript.org/show_bug.cgi?id=5. Fixed 2011-09-23 15:10:53 -07:00
David Fugate
1b3e926837 Think I've come up with a fix for https://bugs.ecmascript.org/show_bug.cgi?id=11 (Date_library.js):
- juneDate and decemberDate were both one month off.  Fixed
- LocalTZA wasn't actually LocalTZA as defined in ES5.  If we were in DST when
  this was created, LocalTZA was off by one hour.  Fixed
- GetSundayInMonth was completely busted (i.e., arithmetic operations on the 'count'
  param which happens to be a string).  Fixed(?)
- DaylightSzavingTA was defined incorrectly.  It assumed the local time zone adjustment
  hadn't been accounted for.  This wasn't how UTC was calling it.  Fixed(?)
2011-09-22 11:58:06 -07:00
David Fugate
ec5dce172d From the 'Run' tab, there's now a clickable 'Error' link showing precisely what
failed.
2011-09-22 11:43:39 -07:00
David Fugate
0937e10a03 Improved global scope 'missing error' error message. 2011-09-22 11:41:30 -07:00
David Fugate
17c67df352 Found more of Sputnik's date helper funcs. 2011-09-21 15:40:29 -07:00
David Fugate
cbc587c61b Merge. 2011-09-13 16:22:37 -07:00
Mark Miller
bba34a262e Reformatted to 80 columns. Inserted missing semicolons. Removed one
bogus semicolon. Except for the bogud semicolon, nothing should have
changed the meaning of the programs.
2011-09-13 01:08:50 -07:00
David Fugate
807a3ba1b7 Merge. 2011-09-12 11:25:23 -07:00
David Fugate
2c16b93983 Re-added tests disabled by https://bugs.ecmascript.org/show_bug.cgi?id=126. 2011-09-12 10:02:51 -07:00
Mark Miller
77450b53f2 Unlike the current sputnikLib.js, framework.js cannot define $ERROR
etc, because the substitution logic in test262.py operates on the
source after prepending framework.js.

The plan is to replace sputnikLib.js with framework.js. Also, the
substitution logic in test262.py should probably be fixed to apply the
substitution before prepending.
2011-09-11 21:45:26 -07:00
Mark Miller
a2ca5b512b Adapted the sputnik command line testRunner to a command line
testRunner, test262.py, that can run all the converted tests.
2011-09-11 21:12:01 -07:00
Mark Miller
ca417c93dc Now generating the format David Fugate and I agreed on this
morning. The rewrite of "function testcase()..." now puts the
assertTrue at the bottom. Preconditions, names, and ids are
removed. And the path in the file is ignored, and is instead set
accurately according to where the file is found.
2011-09-07 21:42:49 -07:00
David Fugate
9a8578be92 activityBar is a member of the Presenter object. 2011-08-25 14:14:29 -07:00
David Fugate
2871886420 test\harness\*:
- a lot of JS harness code written in strings have been moved out to actual physical files
  such as ed.js (syntax error detection for globally scoped tests) and gs.js (global scope test
  case validator).  This change makes it far easier to maintain the test harness code
- reorganized helper.js providing a clear indication which methods are used by external objects,
  which are implementation details, and which are unequivocally test262-specific.  I've also added,
  openErrorWindow, which will be used to open a descriptive error message window for each test case
  failure reported on the 'Run' tab
- improved the error message for syntax errors occurring when a test case fails to load
- sta.js no longer tries to pickle all helper functions it contains!  Instead, we load the file
  directly from sth.js.  The performance of fnGlobalObject has been improved.  Finally, the ES5Harness
  object has been moved from sth.js (in a string) to here
- sth.js now has a browser implementer hook, controller.implementerHook, which allows browser implementers
  to handle test case failures in their own way (e.g., log to the filesystem).  The 'run' function was
  basically re-written

Added 37 new test cases from the "IE Test Center" Build release.  There were 14 modifications to
existing test cases as well.  Refactored SputnikGlobalScope.js such that test case paths are now used
as indices into the GlobalScopeTests array.

TestCasePackager.py had the concept of templated test harnesses introduced - see templates\runner.test262.html.
Also added support for one HTML test harness per ES5 chapter.  Last but not least, TestCasePackagerConfig.py
now has a 'source control' abstraction class which abstracts away source control adds|edits when dynamically
generating *.json and *.html test chapters.
2011-08-25 11:18:44 -07:00
David Fugate
8b0704e64c https://bugs.ecmascript.org/show_bug.cgi?id=87 *should* in theory be fixed now. Need to test
on the live website to be sure.
2011-07-01 12:01:55 -07:00
David Fugate
9c0e7dd413 Test failures in the 'Run' tab now have a link to the test case's source
similar to the 'Results' tab.
2011-06-09 16:31:52 -07:00
David Fugate
33ba3d7621 Moved TEST_LIST_PATH from sth.js to default.html. 2011-06-07 09:48:10 -07:00
David Fugate
ef45786a21 A major web browser does not fire window.onerror for iframes when the iframe's document
contains a JavaScript syntax error (major test area).  Added a workaround.
2011-04-20 15:39:50 -07:00
David Fugate
545f2c34a0 *NOTE: this is a work-in-progress. Need to remove our dependency on a separate 'GlobalScope'
directory next*

SputnikConverter:
- ES5TestCase.cs
	* Case of JSON-based property names was wrong.  Fixed
	* Use the tests' 'id' instead of 'path' as the GlobalScopeTests keys
	* Added 'id' and 'path' as Global Scope test metadata.  The correct/clean solution here is to simply use 'path'
	  as the key to GlobalScopeTests, but this refactoring needs to be undertaken later when we can convert the
	  'normal' test cases over to use 'path' as the key as well
	* Turns out we cannot depend on the message received by window.onerror to have some form of "syntax"
	  contained within it.  Instead, we'll just rely on the regular expression ".", matches any one character,
	  for the short term
- SputnikTestCase.cs
	* Same case issue as for ES5TestCases.cs
	* Don't trust the Sputnik metadata for the ES5 section name or even test case id to be correct. Instead,
	  generate this information from the file path of the test case


TestCasePackager.py:
- added a new global, GLOBAL_SCOPE_FILES, which is a list of JS files found directly under test\suite\*.js
  which include metadata for so-called globally scoped tests.  These files are imported directly by the HTML
  test harness

test\suite\*:
- regenerated Sputnik tests based on new converter

default.html:
- import SputnikGlobalScope.js.  Really TestCasePackager.py should generate the global scope imports to
  default.html automatically...


website\resources\scripts\testcases\*:
- test cases have shuffled from existing *.json files into globalscope.json
2011-04-20 11:17:38 -07:00
David Fugate
7ee99fb6ce We had a duplicate copy of fnGlobalObject in both sth.js and sta.js. Left only the sta.js copy.
Regenerated the JSON files based on ietestcenter changes.
2011-04-08 09:44:12 -07:00
David Fugate
08a7f7433a Few minor changes to sta.js and sth.js to support Strict Mode.
Renamed move_test.py to FixTestCasePlacement.py. Still a work in progress.
2011-04-07 10:12:45 -07:00
David Fugate
0edb82f716 Fixed a number of small issues with the website. 2011-03-11 14:14:23 -08:00
David Fugate
2a7b5435d7 Switched from using XML for encoded test cases to JSON. 2011-03-11 10:59:52 -08:00
David Fugate
82c8d63eee Added a test harness 'debug' mode to Simple Test Harness. Accessible via appending
"?sitedebug" to the end of the Test262 URL.

There's a mismatch between the Test262 test harness and IE Test Center's harness
which invalidated 15.4.4.17-5-1.js, 15.4.4.18-5-1.js, and 15.4.4.20-5-1.js on Test262.
Essentially what's going on is Test262 uses the 'window' object as 'this' for the test
case functions whereas IE Test Center uses the test case object housing the test case
function as this.  This causes problems for test cases pertaining to scoping.  I've gone
ahead and adjusted the Test262 tests to expect 'window' to be 'this', and will be updating
IE Test Center's harness to use the 'window' object as well so we don't run into this
problem again.
2011-02-08 09:42:59 -08:00
David Fugate
e4d4a7a870 test\harness\helper.js: extended the 'finished' method to accept as input the total elapsed execution time
of the tests.  Emit this to the activity bar


test\harness\sta.js:  too many years of Python had me thinking JavaScript arrays have an append method:)  Fixed.
                      Also, added a pickled representation of all test helper functions found in this file


test\harness\sth.js:  detached most test helper functions from the iframe's document object (as globals) and
                      inject these into the actual test cases. It's a bit slower and not as elegant, but it is
                      cleaner from an ES5 purist perspective.  Still need to move Sputnik helper functions into
                      sta.js

                      Extended Controller such that it now measures overall test execution time.  Such a change
                      is very useful for measuring performance-impact changes such as the aforementioned
                      improvement
2011-02-03 16:28:52 -08:00
David Fugate
2ec3b287d7 - split sth.js (simple test harness) into sth.js and sta.js (simple test APIs)
- updated version number for the overall site to 0.3
2011-02-03 12:27:00 -08:00
David Fugate
f301c17e6b sth.js: added a couple of test helper functions
Addressed test case issues detailed in https://mail.mozilla.org/pipermail/test262-discuss/2011-January/000020.html.
2011-02-02 13:24:45 -08:00
David Fugate
37859d334a - default.html still had a reference to reports.js. Removed. Also, removed test\harness\reports.js
- test\harness\sth.js:  fixed a bug spotted by Mark Miller.  In short, we were allowing
  a test case return value of 'undefined' to be successful WRT IE Test Center tests because
  Sputnik tests normally return undefined (successful or not).  We now differentiate between
  Sputnik/IE Test Center when evaluating return values
2011-01-17 15:01:19 -08:00
David Fugate
8bd3768a4e - all files supporting the 'Browsers' tab have been removed.
- updated website version number to 0.2
2011-01-17 11:08:45 -08:00
David Fugate
35450e9e80 Did a bit of refactoring on the test262 directory structure and propagated changes from
website\* out to test\*:
- Removed test\harness\ECMA-262-TOC.xml.  The casing on this file was incorrect, but
  more importantly it's a static file not generated by the harness
- Populated test\harness with the contents of website\resources\scripts\global\.  In
  the future, we need to update test\harness\* and propagate these changes out to
  website\*
- Test\suite\ietestcenter is now a verbatim copy of the IE Test Center tests that
  WERE under website\resources\scripts\testcases\*
- Moved all Sputnik tests from website\resources\scripts\testcases\* out to
  test\suite\sputnik_converted
- Moved website\resources\scripts\testcases\excludelist.xml out to test\config\*.  This
  particular file was only used for the test conversion process to XML, and is not actually
  needed by the website as best as I can tell
- Website\resources\scripts\testcases now only contains the XMLized test cases.  This is
  the right thing to do as the *.js files here weren't actually being used by the website
  and the general public can now peruse the test cases directly via Mercurial
2010-11-15 21:23:35 -08:00