Commit Graph

348 Commits

Author SHA1 Message Date
Kieran Sedgwick 0bbaf5ff93 Added and fixed unit tests
Aside from testing our new module (network.js), we also had to add logic that would test Filer appropriately in both the node and browser environments.
2014-05-22 23:26:19 -04:00
Kieran Sedgwick 3ef2a4e07d Split the distribution of Filer into two files
The AMD-module system Filer uses can't handle require() calls that reference a node module. By creating two distributions we allow the node version to use a full implementation of RequireJS, which gracefully falls back to Node's require() when RequireJS can't find the module in its registered paths.
2014-05-22 23:04:08 -04:00
Kieran Sedgwick 9f33d8503e Swapped out XMLHttpRequest for a custom module
We made a module to encapsulate the logic that chooses the nodejs or browser dependency that actually downloads a file when the module is used.
2014-05-22 23:04:08 -04:00
David Humphrey 81b4d26b90 Finish test suite changes for node.js 2014-05-22 23:04:08 -04:00
David Humphrey 9426a700b5 Generate separate filer for testing in node so we don't overwrite dist/filer.js 2014-05-22 23:04:08 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 89c44f2f72 Fix time-based tests to not fail in node, since operations on Memory run faster 2014-05-22 23:04:08 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca e041c2d904 Tests running now 2014-05-22 23:04:08 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca c18660a2ed Initial work on getting tests to run, some working 2014-05-22 23:04:07 -04:00
David Humphrey e37ba7142c Fix review nit, add test 2014-05-22 15:09:33 -04:00
Alan K 247ebd113a Merge pull request #187 from yoavgurevich/issue62v2
Fixes #62
2014-05-21 16:17:19 -04:00
gideonthomas aff6570ad6 Added mknod command to create a file or directory node 2014-05-21 11:25:23 -04:00
yoavgurevich 067f9beb88 Final revisions on removal of arbitrary logic and indentation issues 2014-05-16 17:17:50 -04:00
yoavgurevich 4d24ab2c36 Fixed logic, format, and dependencies according to line note comments from last pull request. Tested on apache localhost server. 2014-05-16 11:43:54 -04:00
yoavgurevich 6b2a023dea Corrected conflicting syntax and added testing clause for file descriptor argument value 2014-05-14 16:02:46 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca b04fc6dbae Fix tests so they pass in PhantomJS (hack, we just skip for now) 2014-05-14 15:09:12 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 411d6b2a9c Docs and update arg names to match docs 2014-05-14 13:31:53 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca af4a004435 All zip/unzip tests passing 2014-05-14 13:31:53 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 35b2fe46c6 Complex trees can be unzipped 2014-05-14 13:31:53 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 16c64d1ca2 Switched to zlib.js, all tests passing 2014-05-14 13:31:53 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca c9cb4b4bdb Work thus far, still not right 2014-05-14 13:31:52 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 1cbede711a Add test to confirm that fs.appendFile works when file is missing. 2014-05-14 13:31:52 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca fe4b1e5c0e Adding sh.zip() but still failing a test 2014-05-14 13:31:52 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 3411ba2dd3 First working end-to-end unzip test passing 2014-05-14 13:31:52 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 1b12f44a02 Allow query string and hashes in wget filenames and add tests. 2014-05-14 13:24:54 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 9725f0a412 Improve automatic filename extraction for wget 2014-05-14 13:24:54 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 60a9dc2470 Beef up XHR code in sh.wget(), still failing 2 in PhantomJS due to not having web server 2014-05-14 13:24:54 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 2aa46493fa Add sh.wget() for downloading files into the fs, with tests and docs 2014-05-14 13:24:53 -04:00
Petr Bouianov febba4c8ba Tests that expect errors check error codes. Fixes issue78 2014-04-17 11:53:55 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca be9e0b50a8 Generate errors instead of hard-coding, with tests 2014-03-16 11:36:15 -04:00
David Humphrey (:humph) david.humphrey@senecacollege.ca fe7ec79f83 Refactor errors code, fix to better match node 2014-03-16 11:36:15 -04:00
Petr Bouianov 6faabdb937 Added shell.mkdirp. Fixes issue #126. 2014-03-13 23:03:29 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 4a0ffb5f5a Fix EventEmitter to match that expected by Intercom 2014-03-12 16:49:20 -04:00
Alan K 0cfb29eaec Merge pull request #140 from humphd/issue132
Support fs.watch(), FSWatcher. Fixes #132
2014-03-08 16:04:15 -05:00
kwkofler 4ff7c7d7cb Fixed README issues, and fixed misuse of expect() syntax. 2014-03-08 13:53:53 -05:00
kwkofler 880f70d3de Merge remote-tracking branch 'upstream/develop' into issue#112
Conflicts:
	src/fs.js
	tests/test-manifest.js
2014-03-07 18:47:32 -05:00
kwkofler 526f2d0934 Renamed Stats to stats 2014-03-07 18:39:38 -05:00
kwkofler 7c14af9668 Fixed Stats prototypes, created full Mocha test suite 2014-03-07 18:10:02 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca eff4d9b5fc Deal with failing tests for rename, and do a better cleanup job in watcher.close() 2014-03-07 13:46:54 -05:00
kwkofler 0fb099d6c8 Renamed test suite, started rewriting for mocha. 2014-03-07 13:06:11 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 96836f355c Most things passing for change events now, ported node.js watch tests 2014-03-07 11:54:14 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca a365144e97 First passing tests for fs.watch(), use EventEmitter2 via bower 2014-03-06 22:27:10 -05:00
Alan Kligman bb9c34e5b3 Revert "Merge pull request #113 from kwkofler/issue#112"
This reverts commit bfba8c3546, reversing
changes made to f079eaa7dd.
2014-03-06 11:35:53 -05:00
Alan K bfba8c3546 Merge pull request #113 from kwkofler/issue#112
Resolves issue #112, though isBlockDevice(), isCharacterDevice(), isFIFO...
2014-03-06 09:52:40 -05:00
Alan K f079eaa7dd Merge pull request #134 from pbouianov/issue125
Updated error object to match Node.js. Solves issue #125.
2014-03-05 22:39:02 -05:00
Alan K 567145052c Merge pull request #138 from humphd/test-timeouts
Increase the test timeout threshold from 2s to 5s
2014-03-05 22:24:27 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 31ef56ff8e Increase the test timeout threshold from 2s to 5s (for longer db operations), with a slow test warning of 250ms 2014-03-05 22:02:05 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 72e527dfab Add tests for time mount flag suppression (NOMTIME, NOCTIME) 2014-03-05 21:41:45 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca f580f40016 Tests for ctime, mtime, atime updates 2014-03-05 19:53:21 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 8c743bb95a Fix remaining test failures 2014-03-05 16:27:12 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 61111da85d Finish atime, ctime, mtime updates for fs operations, fix tests 2014-03-05 15:57:28 -05:00
pbouianov c5ed7d4a55 Updated tests already checking error name 2014-03-05 14:28:31 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca f10b86b644 Change fs.utime test to remove constant times, prefering calculated duration. Fixes #103 2014-03-04 15:30:46 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 23a9861e82 Deal with provider.open edge case in new provider-agnostic tests. Fixes issue #127. 2014-03-03 19:11:31 -05:00
kwkofler 866d8c1876 Issue #112 - Added mode reporting functions to the Stats object prototype, and appropriate tests 2014-03-03 18:54:01 -05:00
Alan Kligman 7d6bd98a31 Merge branch 'develop' of github.com:js-platform/filer into develop
Updated null-bytes test to have absolute paths

Conflicts:
	dist/filer.js
	dist/filer.min.js
2014-02-21 12:51:59 -05:00
pbouianov 0c30d6dd18 Added fs.exists support. Fixes Issue91 2014-02-21 06:56:14 -05:00
Alan K b6b4ac8fec Merge pull request #120 from humphd/issue119
Default provider for tests should be indexeddb. Fixes #119
2014-02-19 18:22:43 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 715f56b478 Default provider for tests should be indexeddb. Fixes #119 2014-02-19 17:47:14 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca a7a1f4b82e Change sh.exec to take a list vs. object for passed args 2014-02-19 17:36:26 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca eadd4ec03c Review fixes 2014-02-19 17:29:11 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 21f5d15f51 Add support for shell.env, PWD, TMP, and tempDir, with tests 2014-02-19 15:33:37 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 83c55308dc Add shell.rm() with tests 2014-02-19 15:33:37 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca e4767019cc Add shell.ls() with tests 2014-02-19 15:33:37 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 2829079bd3 Add Shell.cat() with tests 2014-02-19 15:33:37 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca ef09526740 Add cd test for symlink'ed dir 2014-02-19 15:33:37 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca d7cce709f9 Fix shell.cd and add tests 2014-02-19 15:33:37 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 263b9cd9b0 Add shell.exec with test 2014-02-19 15:33:36 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca e43b1ba551 Working touch command with tests 2014-02-19 15:33:36 -05:00
Alan Kligman 3d57be4858 Fixes #116. 2014-02-19 12:53:05 -05:00
Alan Kligman 18958fc585 Updated indexeddb test messages to match websql 2014-02-18 21:49:56 -05:00
Alan Kligman 49cec5df60 Fix #105. Regression test for #105 had an error so I fixed that also. Updated refactoring-test example. 2014-02-18 21:45:36 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca d2f743511e Turn on jshint and mocha/phantomjs tests with TravisCI. Fixes #48. 2014-02-17 11:28:40 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 4812861dcf Refactor tests: switch to Mocha, make providers and filer source configurable. Fixes #59
Make provider configurable via URL. Convert fs.close test to use it. Still have timing issue with WebSQL.

Indent fix

Use bower to install mocha

Converting to mocha, Memory provider failing still in fs.close

Got mocha tests working with all providers

Converted more tests

Move more tests over to mocha

Move more tests over

Move more tests over

More tests moved over

More tests converted

More tests moved over

Move more tests over

Move last tests over

Convert more tests

Remove Jasmine and other unnecessary test files, rename tests/spec/regression to tests/bugs

Get tests running with grunt+mocha+phantomjs

Add docs on new tests
2014-02-14 15:44:57 -05:00
David Humphrey ce39bca20c Failing test for issue 106 2014-02-11 14:26:37 -05:00
David Humphrey 7e09a4dfe1 Failing test for issue 105 2014-02-06 22:38:39 -05:00
Alan K 4137c12420 Merge pull request #101 from pbouianov/issue88
added fs.appendFile support
2014-02-03 19:50:37 -08:00
pbouianov 6ec635e551 fixed, added appendFile tests and updated README 2014-01-30 14:12:32 -05:00
Alan K a27fd8e1e5 Merge pull request #93 from btulchinsky/utimes
utimes test case fix
2014-01-20 16:55:20 -08:00
David Humphrey 6f61249e81 Remove 3DES and Rabbit from encryption adapters, update docs, tests. Fixes #92 2014-01-16 14:46:33 -05:00
Barry Tulchinsky 84c859a14c test case fix 2014-01-15 21:35:42 -05:00
Barry Tulchinsky 95f3547cfb fix another error in the spec tests for utimes 2014-01-15 21:15:40 -05:00
Alan Kligman 6c0758c6aa fix busted tests 2014-01-14 14:50:20 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 641eb870a7 s/IDBFS/Filer/ in all files, docs, tests. Fixes #54 2014-01-14 11:36:18 -05:00
Barry Tulchinsky d31d33651c removed comments and patched parameter name and potential undefined error 2014-01-13 20:03:54 -05:00
Barry Tulchinsky b08a8d15dd fixed null value and refactored setxattr 2014-01-05 12:22:57 -05:00
Barry Tulchinsky c4dd0f560c continue work on tests and clean-up code 2014-01-02 17:50:26 -05:00
Barry Tulchinsky 732218cc1d fixed unnecessary null checking and replaced it with hasOwnproperty method, also added removexattr and fremovexattr and tests for it 2013-12-24 15:10:17 -05:00
Barry Tulchinsky 7ae907cd5b changed behaviour to allow falsy values (ie. empty string), added more test cases and modified README.md 2013-12-22 20:58:00 -05:00
Barry Tulchinsky 55c08e6f08 added more tests and added spec file to test manifest 2013-12-21 16:30:40 -05:00
Barry Tulchinsky 5d022c3ca3 started spec tests and exposed to FileSystem prototype 2013-12-20 11:50:59 -05:00
Alan Kligman 9f031397e8 Merge branch 'utimes' into develop 2013-12-20 00:45:50 -05:00
Alan Kligman 7dc0ef6ccb remove comments; clarify test message 2013-12-20 00:45:11 -05:00
Barry Tulchinsky 08c1ccfd25 removed unnecessary variables in test 2013-12-17 11:36:47 -05:00
Barry Tulchinsky 359b070536 updated/added tests and caching for current time 2013-12-17 11:28:22 -05:00
Barry Tulchinsky 23ace603c9 added/fixed tests and futimes bug 2013-12-15 21:22:36 -05:00
Barry Tulchinsky b5b2367959 removed console.log statements used for debugging from spec tests 2013-12-15 15:27:48 -05:00
Barry Tulchinsky e84d639210 fixed bugs where atime and mtime weren't updated on the node and where mtime was valid it would error. Also added more tests 2013-12-15 02:54:51 -05:00
Alan Kligman e17acff0b1 reorganized for building 2013-12-14 22:36:24 -05:00
Alan Kligman dac59f97b3 fixes #77; also checked for error type to make sure the test passes for the correct reason (and not ENoEntry, for example) 2013-12-14 15:14:44 -05:00
Barry Tulchinsky d5b5c55fe1 implementation of utimes and futimes 2013-12-13 00:46:31 -05:00
Alan K 170af0baa8 Merge pull request #70 from ispedals/truncate
Good code, good tests. Merging.
2013-12-10 11:51:52 -08:00
Abir Viqar 7437aded15 refactor callback chain 2013-12-10 12:32:10 -05:00
Abir Viqar 13abcd2eeb implement truncate and ftruncate 2013-12-10 12:12:43 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 3d11b34893 Update adapter tests to use Uint8Array and fix crypto encodings, complete zlib work. Fixes #52. 2013-12-04 12:14:16 -05:00
David Humphrey a3a1c50b4e Add Zlib adapter, generalize adapter tests 2013-12-03 15:14:20 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 8c9127d798 Remove need for encoding-indexes.js, trim bits of lodash.js we don't need. Fixes #57 2013-12-02 15:10:43 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca d2790a4703 Review fixes, move crypto to src/adapters, update tests, update README, rebuild files in dist/ 2013-12-01 16:45:24 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 58f57cca19 WIP on crypto wrapper providers for AES, TripleDES, Rabbit, 3 tests failing 2013-12-01 16:44:09 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 6ebbdc5915 Finish WebSQL implementation, all tests passing. Fixes #21. 2013-11-29 10:29:04 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca d5db4c51b9 Down to 1 test failure 2013-11-27 19:35:52 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca c92d3a6c5f Passing 1/4 failing tests now 2013-11-27 17:12:46 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 58392efd10 WebSQL Storage Provider with tests (4 tests failing still) 2013-11-27 16:53:06 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 8a33cb0449 Fix load order for TextEncoder/TextDecoder in require.js, update dist/ 2013-11-27 13:08:26 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 415ad41406 Break test files up using require 2013-11-27 12:18:09 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca d3a7750d75 Switch to node.js' callback pattrn, update public API to match node.js 2013-11-27 10:34:43 -05:00
David Humphrey b7733a591d Working null byte patch checks 2013-11-27 10:34:43 -05:00
David Humphrey 77f32c4c50 Initial tests from node repo 2013-11-27 10:34:43 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 3c5a5ef7fa Review fixes 2013-11-26 19:12:25 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 6e16f86208 Make backends pluggable via FileSystem ctor, fixes #36. 2013-11-25 19:23:51 -05:00
Abir Viqar ac689fc8b4 test rename does not follow symbolic links 2013-11-25 14:27:16 -05:00
Abir Viqar 702dd1a3a3 open should follow symbolic links
This functionality is tested implicitly through tests in
writefile, readfile
2013-11-25 14:27:14 -05:00
Abir Viqar 1b3ef1a449 unlink should not follow symbolic links 2013-11-25 14:27:05 -05:00
Abir Viqar f3b9a83343 test link should not follow symbolic links 2013-11-25 14:27:03 -05:00
Abir Viqar 656dfd242b rmdir should error on non-directories 2013-11-25 14:27:00 -05:00
Abir Viqar 635dd2e899 test readdir's symbolic link support 2013-11-25 14:26:57 -05:00
Abir Viqar e8df3e2e6b test stat's symbolic link support 2013-11-25 14:26:55 -05:00
Abir Viqar 5cbebd135c add lstat 2013-11-25 14:26:52 -05:00
Abir Viqar 5ceff20b12 make find_node symbolic link aware
This adds a new constant SYMLOOP_MAX, which corresponds to the POSIX
variable of the number of symbolic links that may be followed. A new
error Eloop was added to signal when SYMLOOP_MAX is exceeded.
SYMLOOP_MAX has been arbitrarily set to 10 while on linux it is set
to 40 and the POSIX minimum is 8.

find_node when encountering a symbolic link anywhere in the given path
will attempt to follow it.

Note that SYMLOOP_MAX is only the limit of symbolic links to
follow per symbolic link. There is currently no attempt to limit
the total number of symbolic links followed when resolving a path.

This adds tests for path resolution of symbolic links as well.
2013-11-25 14:26:46 -05:00
Abir Viqar 85a804cc0c add symlink
Also enable readlink's symbolic link test.
2013-11-25 14:26:40 -05:00
Abir Viqar a78f1ee3ff add readlink
Disable the test on a symbolic link until symlink is added.

Also add myself to AUTHORS
2013-11-25 14:26:34 -05:00
Alan Kligman c76fc01a20 support rename() 2013-11-12 13:39:11 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 034dc8c166 Add test for invalid path to readFile. 2013-11-09 15:12:07 -05:00
David Humphrey (:humph) david.humphrey@senecacollege.ca 2a8705ed0b Add fs.readFile, fs.writeFile with tests 2013-11-08 15:33:44 -05:00
Alan Kligman 7e59e3a684 support for readdir 2013-11-07 15:55:14 -05:00
Alan Kligman dabf8c8c7a Added lseek and tests. 2013-07-29 15:59:17 -04:00
Alan Kligman 850758e37a Add fstat and tests. Fix position bug in read/write. 2013-07-29 14:55:25 -04:00
Alan Kligman 984db2ceba Add file type to stats. 2013-07-26 11:59:32 -04:00
Alan Kligman e690ed5292 Unlink implementation and tests. 2013-07-26 00:15:48 -04:00
Alan Kligman 717bbc25c1 Link tests. 2013-07-25 22:49:53 -04:00
Alan Kligman ea8fbd48ad Updated tests. 2013-07-22 23:34:38 -04:00
Alan Kligman fb9fed0663 Tests for reading and writing data. 2013-07-22 14:31:44 -04:00
Alan Kligman 40d3f25d9a More tests, updated implementation. 2013-07-22 13:08:35 -04:00
Alan Kligman d3d7dcabde Code and tests for fs.open 2013-07-19 11:22:23 -04:00
Alan Kligman 5853704bab Updated tests. 2013-07-15 11:52:41 -04:00
Alan Kligman cfd0932736 More tests. Added try/catch around read/write_object. 2013-07-13 12:41:10 -04:00
Alan Kligman 3d00c85a27 Updated tests. 2013-07-12 12:07:57 -04:00
Alan Kligman c3c9751ff4 Stat implementation, updated tests. 2013-07-12 11:11:05 -04:00
Alan Kligman 580dad5315 WIP 2013-05-31 03:52:04 -04:00