Commit Graph

696 Commits

Author SHA1 Message Date
blagoev aab7171643 add test for working with local realms with async open api 2017-05-19 09:18:48 +03:00
blagoev ea7b10191a Add test for async open api with no schema usage 2017-05-19 08:59:03 +03:00
blagoev ebb8d8efa6 Revert "reverted the debugger attached timeout change that might be causing CI to hang"
This reverts commit c019ffc33a.
2017-05-17 16:23:49 +03:00
blagoev c019ffc33a reverted the debugger attached timeout change that might be causing CI to hang 2017-05-17 16:18:56 +03:00
blagoev cb72fe1977 addressed pr review comments 2017-05-17 16:09:48 +03:00
blagoev a0f963775b Fix download api for RN
fix tests when run in RN
2017-05-17 16:09:19 +03:00
blagoev 4aecf90176 enable all session-tests and Realm.openAsync 2017-05-17 16:08:24 +03:00
blagoev d0a6ca5db6 Fix showing syntax errors in sync test files 2017-05-17 16:08:12 +03:00
blagoev 315b8c1a7a Fix download api to wait correctly using schema less realm
Added tests using two processes (nodes only)
2017-05-17 16:08:01 +03:00
blagoev 216484aede Initial download api support 2017-05-17 16:07:08 +03:00
blagoev db8eb39b86 add semicolon 2017-04-20 18:23:30 +03:00
blagoev c959cc799c possible fix to session tests timeout 2017-04-20 18:23:30 +03:00
Yavor Georgiev 7543c1274d increase jasmine timeout to a ridiculously high value 2017-04-20 18:23:30 +03:00
Yavor Georgiev 9a8dc1327f remove assertion 2017-04-20 18:23:30 +03:00
Yavor Georgiev a37c38ca92 increase jasmine timeout to a ridiculously high value 2017-04-20 18:23:30 +03:00
Yavor Georgiev 95da4d81c3 refactor session tests 2017-04-20 18:23:30 +03:00
blagoev 4c9f88560e fix testCurrent user test 2017-04-06 18:26:36 +03:00
blagoev 7486ecf029 fix user-tests 2017-04-06 14:25:40 +03:00
blagoev 1aec51cfae fix tests not completing on failure 2017-04-06 11:00:29 +03:00
blagoev a33577eccb remove obsolete test nosync targets 2017-03-30 11:24:46 +03:00
blagoev 68e75a4265 enable js debugging of node tests from within vs code 2017-03-28 23:22:31 +03:00
Yavor Georgiev 80818779ba Fix opening synced realm with an encryption key (#945) 2017-03-28 14:34:27 +02:00
blagoev c5cad2fcd5 correct test-runners tests 2017-03-27 19:18:56 +03:00
blagoev d23d60f272 refactor test.sh to use npm commands
fixed license-check npm command
added test-runners npm command
2017-03-27 19:18:56 +03:00
Adam Lebsack 5ce8afa559 Merge pull request #938 from realm/ajl-fix-tests
Bump up test timeout
2017-03-24 13:36:16 +01:00
Adam Lebsack a5c0456a22 Bump up test timeout 2017-03-24 13:12:00 +01:00
Kristian Dupont 045b963d6f Change fragile test to wait for signal rather than for a period of time (#936)
* Change test to wait for signal rather than for 4 seconds

* Tiny refactoring
2017-03-24 12:49:28 +01:00
Kristian Dupont f551a51acc Add missing sync error (#925)
* Add missing sync error

* Make unit tests work without sync

* Wording fix
2017-03-22 13:52:41 +01:00
Kristian Dupont 5bece3d5c4 Validate user-methods parameters (#924)
* Validate user-methods parameters

* Switch homemade typeof operator for real one.

* Fix array prototype access
2017-03-20 12:52:41 +01:00
Yavor Georgiev db8ebd9333 Node.js Win32 support (#864)
* Remove the windows install check

* Node.js Win32 support

* Bring back the `REALM_HAVE_CONFIG` definition

* Download core for Windows when building

* Implement cross-platform node platform.cpp with libuv

* wip

* Make jasmine run quicker

https://github.com/jasmine/jasmine/issues/1204

* Wait for worker process to close in AsyncTests

* Cross-platform paths in tests

* Normalize path separator for forward slash on Windows

* MSVC exception voodoo

* cross-platform uv_cwd

* fix linux build

* make the prepublish script cross-platform

* Disable encryption tests on windows

* ignore vendor/realm-node

* jenkinsfile work

* Only run the prepublish script for publish and pack

* Jenkinsfile work

* Include gyp files in package

* rewrite default_realm_file_directory()

* fix React Native Android build

* delete all realm artifacts in remove_realm_files_from_directory

* bring back build environment variables

* node-pre-gyp windows

* Update CHANGELOG.md
2017-03-07 23:24:30 +01:00
Yavor Georgiev b93cfaf909 Temporary disable realmjs target on CI (#895)
* Temporary disable realmjs target on CI

It's broken because it doesn't support the node-fetch module. Let's disable it for now.

* Temporarily disable Android tests

They need an Object Server to talk to on CI

* Disable test assertion
2017-03-07 17:41:19 +01:00
Radu Tutueanu 833baa2118 Increase timeouts to avoid spurious failures 2017-02-09 12:11:31 +01:00
Radu Tutueanu be584856eb Increase timeout to 3s 2017-02-08 16:35:36 +01:00
Radu Tutueanu f19fd3e5dd Increase bind timeout 2017-02-08 13:52:26 +01:00
Yavor Georgiev 7c1dab7079 Propagate token refresh errors to the session error handler (#843)
* Get a session’s error handler

* Change the signature of all methods to add the callee

* Deserialize rpc callbacks

* Expose the session error handle on its config property

* When a token refresh error occurs and there is a session error handler

propagate the error to the handler
2017-02-07 11:01:26 +01:00
Yavor Georgiev 0c6000a733 Enable running android sync tests on macOS (#834)
* start ROS and forward ports when running android tests on macOS

* rework AuthError so JSC likes it
2017-02-02 02:41:27 +01:00
Yavor Georgiev b2da398559 Fix token refresh and session bugs in chrome debugging (#831) 2017-02-01 23:44:56 +01:00
Yavor Georgiev 9d1d970b1f Sync Session API (#825)
* Add Session class and expose it to JS

* Add error property on the sync config object for the event handler

* tests

* refactor access token refresh

* chrome debugging
2017-02-01 14:18:59 +01:00
Yavor Georgiev 408f5588f8 Add Permissions models and User Management Realm API (#824)
* Add Permissions models and User Management Realm API

* docs and changelog

* fix bad merge

* add test

* fix jsdoc annotation

* rename permissions to management schema
2017-01-31 22:56:09 +01:00
Kristian Dupont 0c9c5ac407 Add missing chrome debugging apis for Sync.User (#801)
* Add user tests

* Add Sync member to Realm

* Add a simple test for addListener

* Introduce browser User class

* Introduce Sync.User proxy

* Fix User.all

* Add User.logout

* Remove some console.log statements

* Update rpc.cpp from tests-folder

* Use user.current from user-methods, not cpp

* remove user.current from two missing places

* Start server in realmjs and react tests

* Add user tests

* Add Sync member to Realm

* Add a simple test for addListener

* Introduce browser User class

* Introduce Sync.User proxy

* Fix User.all

* Add User.logout

* Remove some console.log statements

* Update rpc.cpp from tests-folder

* Use user.current from user-methods, not cpp

* remove user.current from two missing places

* Start server in realmjs and react tests

* Replace needle with node-fetch

* Make AuthError work in the browser

* Allow for persistent callbacks

* Expose _authenticateRealm to native

* Use clear_test_state in roc

* Streamline test inclusion

* Fix login tests

* Promisify testLogin()

* Disable AsyncTests for now

* Mode jasmine timeout to spec/unit_tests.js

* Avoid use of global for fetch module

* Only include user-tests is sync is enabled

* Skip ROS for android tests

* Add some comments about persistent callbacks

* Fix results-test

* Run async-tests in node

* Add a comment about (user object)

* Cache all users in User.current and return promises in fetch

* node_require async-tests so RN doesn't try and package them

* Add missing parenthesis
2017-01-31 14:07:29 +01:00
Yavor Georgiev 12bde1ed35 Improve CI builds relying on Chrome (#796)
* Use ES6 Proxies to implement collections in the Chrome debugger

* rework realm-test-names event

* move React stuff on the CPH mac mini

* use node with npm3

* remove debugging aid code
2017-01-11 18:22:41 +01:00
Yavor Georgiev 6b07937c8b Upgrade react-test-app to RN 0.40 (#784)
* Upgrade react-test-app to RN 0.40.

* Give the test harness enough time to subscribe

to the `realm-test-names` event

* Disable parallel builds in the test app

http://stackoverflow.com/questions/41477241/react-native-xcode-upgrade-and-now-rctconvert-h-not-found

* Update ReactExample to RN 0.40.0
2017-01-10 14:00:23 +01:00
Kristian Dupont bd8a27b963 Improve error message for typeerrors (#785)
* Add a test

* Catch TypeErrorException

* Make exception asserts check error type

* Remove commented-out testcase and check for error type

* Test for Error, not TypeError
2017-01-10 13:41:56 +01:00
Kristian Dupont fa1f22ddc2 Fix constructor init (#774)
* Update test app to RN 0.39.0

* Fix getContext in index.js

* Add dependency on invariant

* Add some comments to getContext

* Make invariant a devdependency rather than a dependency
2017-01-06 14:30:32 +01:00
Mark Rowe 9d858d0329 Update to object store master to pick up the fix for the global notifier. (#778) 2017-01-05 11:56:11 +01:00
Emanuele Zattin 952b3f719b Fix Jenkins builds by rewriting the symlink 2017-01-03 11:32:30 +01:00
Kristian Dupont 4dc0403c58 Make eslint happy 2016-12-29 10:53:51 +01:00
Nabil Hachicha 914866beff Nh/fix 753 (#755)
* Fix Android compilation (Using  EPOLL commit helper)

* Fixe Symbol.iterator on Android

* Fixing testSchema test for Release
2016-12-28 17:16:37 +01:00
Kristian Dupont 5684fd5aa8 Disable dead code elimination (#757)
* Disable dead code elimination

* Remove changes from realmjs project
2016-12-21 16:27:04 +01:00
Mark Rowe 537bc19858 Fix running `./scripts/test.sh react-tests`. (#747)
The RealmReactTests target was failing to build because it was not
linking against libReact.a
2016-12-21 16:00:38 +01:00
Nabil Hachicha b9706b1e80 Nh/fixes 740 (#743)
* Fix Android testing CI job, we don't use the packager since we build the Release bundle
* Test run on Docker-cph-01 or Docker-cph-02
2016-12-20 19:01:45 +00:00
Nabil Hachicha 43dabf5cbd Nh/symbol iterator android (#732)
* Fix Symbol.iterator on Android
2016-12-20 18:56:51 +00:00
Kristian Dupont c1e7ddcda1 Throw when deleting detached object (#694)
* Throw when deleting detached object

* Update error message

* Add user file

* Throw when deleting detached object

* Update error message

* Revert "Add user file"

This reverts commit 2948f4cfc2dfd2d5d75594307b1e89806b817eb7.
2016-12-20 16:28:02 +01:00
Radu Tutueanu d7c44fa7e9 Use mockery in tests to setup the realm module path(#727)
* Use mockery to set up the realm module path

* Use the right path

* Add mockery to devDependencies

* Remove unnecessary symbolic link
2016-12-09 09:05:15 +01:00
Radu Tutueanu 8eb639678e Accept a custom path for the realm module (#725)
* Accept a custom path for the realm module

* Use the correct argument for the realm module path
2016-12-08 13:01:41 +01:00
Kristian Dupont 43d94d1b8b Add checks for removeListener 2016-12-07 16:31:52 +01:00
Kristian Dupont 1d4bb7c2ad Add more tests and fix add_notification 2016-12-07 16:31:52 +01:00
Kristian Dupont bf85c285a0 Add tests for closed-realm access protection 2016-12-07 16:31:52 +01:00
Ari Lazier b9a2c92a8b test fixes 2016-12-06 14:43:07 +01:00
Marius Rackwitz 8964e4d7f9 Only set the path derived from the SyncManager if none was provided (#679)
* Only set the path derived from the SyncManager if none was provided

* Disable synchronizeChangeswithTwoClientsAndOneUser
2016-11-29 10:51:26 +01:00
Adam Lebsack 9900d24181 Merge pull request #664 from realm/ajl/add-tests
Added tests directory to package.json
2016-11-28 13:44:44 +01:00
Adam Lebsack 88e840f315 Merge remote-tracking branch 'origin/master' into ajl/jenkinsfile 2016-11-25 11:33:48 +01:00
Adam Lebsack 5ac6d97833 Added support for React tests on android in docker (phew) 2016-11-24 16:58:16 +01:00
Ari Lazier 19e91c1f7b don't include ios app in the package 2016-11-17 07:35:51 -08:00
Radu Tutueanu 8d5acd7da5 Fix docs and test according to new api 2016-11-16 13:36:41 +01:00
Ari Lazier fabaf5e819 Merge pull request #653 from realm/nh/update_android
Nh/update android
2016-11-15 10:06:20 -08:00
Søren Vind 06d277aacd Bumped version of ESLint, added eslinting of specs, make all linting pass 2016-11-14 10:48:50 -08:00
Marius Rackwitz b01349087c Add a test which synchronizes a change between two clients 2016-11-14 17:36:47 +01:00
Nabil Hachicha a53e802df3 Merge branch 'al-sync-user-tests' of https://github.com/realm/realm-js into al-sync-user-tests 2016-11-14 13:26:54 +00:00
Nabil Hachicha fdf88c2f78 Adding a build type to switch between Core & Core+Sync 2016-11-14 13:26:33 +00:00
Ari Lazier eef8a2de3b property clean up sync state between tests in c++ 2016-11-12 05:26:37 -08:00
Ari Lazier 695d6f9efb suppress garbage debug info 2016-11-11 21:20:04 -08:00
Ari Lazier baa8321453 fix test 2016-11-11 19:33:21 -08:00
Søren Vind 14e75f12bc Documentation for .all and .current 2016-11-11 14:54:12 -08:00
Ari Lazier bb7e98cbbe use latest rn version 2016-11-11 12:01:31 -08:00
Ari Lazier d229cd6130 throw exception when trying to open a realm with an invalid user 2016-11-11 00:14:52 -08:00
Ari Lazier 08ffc3bf15 ccache support 2016-11-10 23:55:26 -08:00
Ari Lazier 81402f890b use yarn and fix for test app package.json 2016-11-10 23:11:31 -08:00
Søren Vind 88aae65721 Test logout, slightly better test scaffolding (so now we run tests to completion on the outer level of callbacks). 2016-11-10 18:06:27 -08:00
Ari Lazier 30679c2470 remove unneeded script phases 2016-11-10 15:54:24 -08:00
Ari Lazier 6d485866f6 all users should return a dictionary 2016-11-10 13:55:22 -08:00
Søren Vind 87b30fb4ec Add tests of Realm.Sync.User.all and Realm.Sync.User.current. Fix both to only return active (logged-in) users. Fix current return values: Throws if >1 user logged in, returns undefined if no logged in. 2016-11-10 12:54:15 -08:00
Søren Vind 448f68a787 Reformat code, 2 spaces 2016-11-10 12:54:15 -08:00
Ari Lazier fb47fb10cc remove sync test code from test app 2016-11-10 11:51:37 -08:00
Søren Vind 164ea8ec79 Port over remaining tests for Realm.Sync.User 2016-11-10 10:35:36 -08:00
Søren Vind f8eba17c48 Make it possible to run test suite with and without sync 2016-11-09 12:50:19 -08:00
Søren Vind d5cd3d7266 Download and start ROS before running tests + Run all tests + Run using node4.4.7 2016-11-08 16:47:20 -08:00
Ari Lazier 8ce8f52105 add test for login 2016-11-08 14:07:04 -08:00
Ari Lazier b2e71a5fb6 test fixes 2016-11-08 09:21:27 -08:00
Ari Lazier fde1c5d00d start implementing sync tests 2016-11-08 08:59:30 -08:00
Ari Lazier 5a49dbc325 make sync work with RealmJS tests 2016-10-27 13:49:41 -07:00
Ari Lazier 92adb669d5 hook up new object store apis 2016-10-26 17:00:46 -07:00
Yavor Georgiev a66198fe46 make tests require the symlinked realm module 2016-10-13 16:09:14 +02:00
Ari Lazier 857369f5a4 download core and sync and get the test app running on sync 2016-10-04 17:27:09 -07:00
Ari Lazier 9d0df0de3d Sync and fine grained notifications 2016-10-04 15:07:14 -07:00
Ari Lazier 1ea107258f don't run npm install multiple times 2016-08-19 10:07:15 -07:00
Yavor Georgiev fb7911e3fa add support for the jest runner’s node environment 2016-08-10 15:50:37 +02:00
Yavor Georgiev 1a98077794 Add tests to ensure realm-js is usable inside mocha and ava tests 2016-08-10 15:47:55 +02:00
Ari Lazier af0ddcdd3d Merge pull request #533 from realm/mr/deprecate-type
Remove usage of Realm.Types in the spec and deprecate it
2016-08-08 12:27:11 -07:00
Ari Lazier 9c8a1ed8ae fixes for RN 0.31.0 2016-08-07 09:33:36 -07:00
Marius Rackwitz 9d25435105 [Tests] Stop using Realm.Types 2016-08-04 10:10:28 -07:00
Ari Lazier 3b75de4554 test app and compile fixes for RN android 0.29.0+ 2016-07-31 14:25:13 -07:00
Ari Lazier d2f733f168 support latest react-native version 2016-07-31 14:23:12 -07:00
Scott Kyle e8ea8e493e Fix for linker error when building for iOS 7
By default, React Native projects target a minimum of iOS 7, but our projects were set to iOS 8 because previously we used a dynamic framework.

When building for an iOS 7 minimum target version, the linker would complain about thread local variables not working on iOS 7. So it was necessary to add even more checks (iOS >= 8 or OS X >= 10.7) before using native thread local variables rather than our shim.

This also changes our projects to target iOS 7 so we can catch these issues quicker in the future.
2016-06-27 12:16:35 -07:00
Scott Kyle 030807e2b9 Fix for failed test stopping tests in ReactTestsApp 2016-06-14 16:57:50 -07:00
Scott Kyle 17e7153a59 Very basic multiprocess change notification test 2016-06-13 17:24:43 -07:00
Scott Kyle b42f5ab285 Allow Node tests to be asynchronous 2016-06-13 17:24:43 -07:00
Scott Kyle 723b50f649 Allow React tests to be async 2016-06-13 17:24:43 -07:00
Scott Kyle 2384cc4036 Reset Realm.defaultPath in testDefaultPath
Or else the rest of the tests use the new default path!
2016-06-13 17:24:43 -07:00
Ari Lazier c7e156a7b8 Merge pull request #488 from realm/al-typos
fixes for typos and added upsert test
2016-06-13 14:51:53 -07:00
Ari Lazier 0a4e0665ae fixes for typos and added upsert test 2016-06-13 14:46:26 -07:00
Ari Lazier 3901bf53dc Merge pull request #479 from realm/al-muti-realm
fix for setting properties to objects from other realms
2016-06-13 14:44:28 -07:00
Ari Lazier 61e74c3059 Merge pull request #472 from realm/sk-primary-key-api
Implement objectForPrimaryKey() method
2016-06-13 14:18:29 -07:00
Scott Kyle cd20d870dd Fix crash from querying with object from another Realm 2016-06-09 15:32:37 -07:00
Ari Lazier 81feca0ce9 fix for setting properties to objects from other realms 2016-06-08 11:22:12 -07:00
Scott Kyle c8df1cddec Update projects to React Native 0.27.1 2016-06-07 18:23:11 -07:00
Scott Kyle cd0bb079b7 Implement objectForPrimaryKey() method
Resolves #328
2016-06-03 16:51:32 -07:00
Scott Kyle ba6e83191b Merge pull request #460 from realm/sk-react-native-26
Update projects to React Native 0.26.2
2016-05-27 16:33:44 -07:00
Scott Kyle b76ed20020 Update projects to React Native 0.26.2
Fixed some minor issues along the way.
2016-05-27 11:30:17 -07:00
Scott Kyle af70bb3c63 Fix all linting issues inside JS tests 2016-05-26 15:47:30 -07:00
Scott Kyle aa09ba3cd4 Factor out some common code in React tests
Now iOS and Android share more code. Also converted to using ES6 modules imports and fixed some other linting issues.
2016-05-26 15:47:30 -07:00
Scott Kyle 48394d9c19 Automatically handle deleting test Realms
No longer leave this up to the test. All testing passes through the runTest() function, so we use that spot to delete the Realms. It also now deletes them beforehand too since a crash in a previous run could leave a Realm in place.
2016-05-26 15:47:30 -07:00
Scott Kyle 58bff5f939 Remove commented Objective-C query tests 2016-05-26 15:46:53 -07:00
Scott Kyle 78a8311ba6 Merge branch '0.13.x'
* 0.13.x:
  [0.13.2] Bump version
  fix for upgrading optional date properties
2016-05-26 14:36:17 -07:00
Ari Lazier 027d4fd153 fix for upgrading optional date properties 2016-05-26 13:30:51 -07:00
Scott Kyle f8ba388d14 Fix crash and other errors with Results snapshots
When deleteAll() is called on a Realm, it calls clear() on all of its Tables, which seems to not update TableViews unless they are synced. The is_row_attached(row_ndx) method still returns true otherwise. A workaround is here until that is fixed.

Fixes #434
2016-05-24 11:52:02 -07:00
Ari Lazier 9e05728dce fix for negative timestamps 2016-05-24 11:45:16 -07:00
Scott Kyle 7740665d7d Merge pull request #449 from realm/sk-crash-fix
Fix crash and other errors with Results snapshots
2016-05-24 11:02:53 -07:00
Scott Kyle 60a58382b4 Add tests where deletion happens before snapshot() 2016-05-24 10:23:36 -07:00
Ari Lazier 604fcc73f2 fix for negative timestamps 2016-05-24 08:23:21 -07:00
Scott Kyle e14e922c39 Fix crash and other errors with Results snapshots
When deleteAll() is called on a Realm, it calls clear() on all of its Tables, which seems to not update TableViews unless they are synced. The is_row_attached(row_ndx) method still returns true otherwise. A workaround is here until that is fixed.

Fixes #434
2016-05-20 13:42:17 -07:00
Ari Lazier fd25afe214 add isValid methods to results and list 2016-05-16 16:01:14 -07:00
Scott Kyle 9370eba229 Merge pull request #436 from realm/sk-react-native-25
Updates for React Native 0.25
2016-05-16 14:22:59 -07:00
Scott Kyle 02b770b79a Fix ESLint errors 2016-05-16 14:15:56 -07:00
Ari Lazier 0f74101074 Merge pull request #423 from realm/al-timestamp
Use new timestamp format
2016-05-16 13:52:31 -07:00
Scott Kyle 55bbcc9e56 Fix ReactTestApp imports for React Native 0.25 2016-05-16 13:24:44 -07:00
Scott Kyle 8db0161ed8 Update projects to React Native 0.25 2016-05-16 13:20:50 -07:00
Scott Kyle 7a26d192ba Merge pull request #427 from realm/sk-object-inheritance
Fix ES6 class inheritance of Realm.Object with Babel
2016-05-16 11:17:45 -07:00
Scott Kyle 5bc72ab2cf Make Date testing work for Node 2016-05-13 16:30:57 -07:00
Scott Kyle c803efd01b Use ".realm" extension in tests for proper cleanup 2016-05-13 15:47:57 -07:00
Ari Lazier 125dd0d1c7 merge it 2016-05-13 15:41:10 -07:00
Ari Lazier 2d2764a4d6 add missing files 2016-05-13 15:31:59 -07:00
Ari Lazier d1dcd4ff3f add additional tests 2016-05-13 15:29:59 -07:00
Scott Kyle 1b21f21c35 Symlink ReactTestApp assets for Android 2016-05-13 15:24:48 -07:00
Ari Lazier e7b341dfdb merge latest from master 2016-05-13 15:05:19 -07:00
Ari Lazier 9c1b923797 fixes for test app 2016-05-13 13:05:39 -07:00
Scott Kyle 323583ed67 Merge pull request #417 from realm/sk-node-6
Fix issues in Node 6
2016-05-12 12:39:31 -07:00
Ari Lazier 194f238c1c add missing realm file 2016-05-12 10:24:11 -07:00
Nabil Hachicha 895c6a3056 Copying embedded Realm files using AssetManager from JNI 2016-05-11 19:56:59 +01:00
Nabil Hachicha 57701db8f4 copy Realm file from assets into default storage folder 2016-05-11 03:30:37 +01:00
Scott Kyle 351543ca09 Rename callback based on PR feedback 2016-05-10 11:37:09 -07:00
Scott Kyle 4300e865c7 Abstracted check for Node v6 2016-05-10 11:34:33 -07:00
Scott Kyle 26d2c169a9 Support ES6 class inheritance from Realm.Object
Unfortunately, this was broken because our native Realm.Object constructor was not presenting itself as a function in JS. This fixes that and adds tests.
2016-05-09 16:49:05 -07:00
Ari Lazier da5a1fb2d8 remove files from test project - they are only needed in the test bundle 2016-05-09 13:44:35 -07:00
Ari Lazier 21b58b6a1e test that conversion actually works 2016-05-09 13:32:10 -07:00
Ari Lazier 9c7b01091f convert old date columns 2016-05-09 13:12:48 -07:00
Scott Kyle fef4be96bd Update tests for changing defaults and constructors 2016-05-06 15:41:17 -07:00
Ari Lazier 28a7efcd1b add test for current date 2016-05-05 17:36:48 -07:00
Scott Kyle 4a5ac413cc Skip test in Node v6 due to v8 regression 2016-05-04 02:15:17 -07:00
Ari Lazier d26924e2f9 allow setting of non-persisted properties 2016-05-03 13:05:48 -07:00
Scott Kyle db1283255f Make React reloads and testing more reliable
Changed where we wait on the previous JS thread, which ultimately makes it more reliable and no longer leak memory on reloads.

Resolves #397
2016-05-02 16:19:29 -07:00
Scott Kyle 933e6070c5 Update test and example apps to use React Native 0.24.1
This might make tests run more reliably on iOS due to some internal changes, mainly "Stop the runloop from invalidate instead of dealloc" (99c7de2).
2016-05-02 16:19:29 -07:00
Scott Kyle 32a8a2ed72 Make migration tests work in Chrome debug mode
All realm operations for the RPC are now done in their own thread so it can be allowed to block on waiting for callback results. The recursive and multi-threaded nature of this makes it pretty tricky, but it works!
2016-04-29 13:55:49 -07:00
Ari Lazier 2b6b0b97f4 Merge pull request #406 from realm/al-workspace
Add workspace and clean up xcproject layout
2016-04-29 13:53:26 -07:00
Ari Lazier 0c05259558 remove old umbrella header 2016-04-29 12:58:25 -07:00
Ari Lazier 2b35360117 add readOnly property 2016-04-28 15:50:43 -07:00
Ari Lazier b9b3812c86 support for read-only realms 2016-04-28 15:42:28 -07:00
Ari Lazier a2ed550dde Merge pull request #383 from realm/al-migration
Basic data migrations
2016-04-28 15:40:27 -07:00
Ari Lazier 0fdb008477 test fixes/additions 2016-04-28 14:08:54 -07:00
Ari Lazier 2c85f032d9 compare non-existent properties to undefined 2016-04-28 13:21:30 -07:00
Ari Lazier a9eaf93acb test dynamic schema access 2016-04-28 13:03:42 -07:00
Ari Lazier baac975413 test schema in migrations 2016-04-28 12:53:04 -07:00
Ari Lazier ef11443e28 test objectTypes 2016-04-28 12:46:59 -07:00
Ari Lazier 79446f957a test and bug fixes 2016-04-28 12:44:48 -07:00
Ari Lazier cff099a4af tests and bugfixes 2016-04-28 12:16:16 -07:00
Scott Kyle 4705b6b3a5 Add test for Results invalidation
This triggers a crash!
2016-04-28 09:39:06 -07:00
Ari Lazier 17e5946af4 support for data migrations 2016-04-27 08:30:59 -07:00
Ari Lazier 27d973151f pr fixes 2016-04-26 16:59:03 -07:00
Ari Lazier b59784670b create RealmObject class and make isValid a member 2016-04-26 16:30:04 -07:00
Ari Lazier 78cb44b1a1 add test for isValid 2016-04-19 17:29:34 -07:00
Ari Lazier 3509caedd5 bugfix for empty results, fix for realm.isValid 2016-04-19 17:29:34 -07:00
Scott Kyle ece554e58f Exit with an error code for failures of node tests 2016-04-19 16:53:49 -07:00
Scott Kyle a05f7e2261 Fix some eslint errors 2016-04-19 01:38:46 -07:00
Scott Kyle 4731610a58 Merge branch 'master' into sk-node
* master:
  add keypath tests
  pr feedback, changelog
  typo
  bug fix
  tests
  support keypath comparisons for types that support it
  support for null queries
  don't require optional or link properties when creating objects
  [0.11.1] Bump version
  Update CHANGELOG with 0.11.1 fixes
  Update changelog script
  Remove changes_available implementation that asserts
  Get correct path to adb from Android Studio
  add some simple tests for Realm.write
  Update apps to use React Native 0.22
2016-04-18 14:19:06 -07:00
Scott Kyle 133289ad85 All tests now pass on Node 2016-04-15 16:06:44 -07:00
Ari Lazier b542fe8c7b tests 2016-04-11 16:01:51 -07:00
Ari Lazier 4ac022ecc9 don't require optional or link properties when creating objects 2016-04-01 11:00:53 -07:00
Scott Kyle 34ece60e69 Merge pull request #335 from realm/sk-react-native-22
Update to use React Native 0.22
2016-03-29 16:08:33 -07:00
Ari Lazier 9d0b890923 add some simple tests for Realm.write 2016-03-29 09:02:36 -07:00
Scott Kyle c9c941aac9 Update apps to use React Native 0.22
React is now a peer dependency, which means we need to add it to our package.json for npm v3 to work properly.
2016-03-24 17:35:46 -07:00
Scott Kyle 02b81ac056 Convert RealmReact to be a static library
We needed to do this due to the way React Native modules work. Our hacky solution for using a framework ended up falling apart due to it relying on symbols not getting stripped from the main application.

This static library is in its own Xcode project because rnpm links in *all* static libraries from a given Xcode project.
2016-03-23 10:50:19 -07:00
Scott Kyle 88f6191a61 Fix disabling of RCTDevMenu for tests on iOS 9.3
After upgrading to Xcode 7.3, the test bundle is being loaded before the rest of the app. We need to ensure +[RCTDevMenu load] is called before we remove it from the set of native modules.
2016-03-22 09:54:06 -07:00
Scott Kyle 0e74362e4c Merge pull request #340 from realm/sk-collection
Make List and Results inherit from Collection
2016-03-21 15:27:18 -07:00
Ari Lazier f13cd0a245 Merge pull request #342 from realm/al-fix-throws
fix for test bug in test harness for queries that should throw
2016-03-21 14:04:22 -07:00
Ari Lazier e84b1eb145 fix for test bug in test harness for queries that should throw 2016-03-21 13:41:00 -07:00
Ari Lazier 4b2e47a861 support encrypted realm when getting schemaVersion 2016-03-21 13:34:12 -07:00
Ari Lazier 836cfc1c6b add chrome debugging, use -1 for not versioned 2016-03-21 13:34:12 -07:00
Ari Lazier 5de63ac401 add tests 2016-03-21 13:34:12 -07:00
Ari Lazier b9475ad772 pr feedback 2016-03-21 11:46:34 -07:00
Scott Kyle 8c66bab8aa Make collection iterators actually iterable
The ES6 spec calls for this so these iterators are usable in for-of loops, with spread operators, etc.
2016-03-20 11:51:16 -07:00
Scott Kyle b5ce02c0ce Make List and Results inherit from Collection
This will allow for easier type checking, documentation, etc.
2016-03-20 11:51:16 -07:00
Ari Lazier b2e4d93732 support for indexed properties 2016-03-18 16:50:55 -07:00
Scott Kyle 92461f2598 Update API docs with encryptionKey 2016-03-17 15:14:56 -07:00
Scott Kyle 9ba477762a Update splice tests to test added behavior 2016-03-17 14:53:42 -07:00
Scott Kyle 7d21e56471 Git ignore Android test XML output
Other rules were redundant
2016-03-16 13:33:59 -07:00
Scott Kyle 401b501aab Explicitly opt-in to building Android module
Fixes #277
2016-03-16 13:01:38 -07:00
Scott Kyle 27073a9e66 Properly configure ESLint for syntax checking
Added a test case to run on CI as well.
2016-03-16 13:01:38 -07:00
Ari Lazier aa08d25ed0 Merge pull request #305 from realm/al-object-store
Latest object store changes and core
2016-03-10 16:03:12 -08:00
Ari Lazier f3c15ff339 Merge pull request #308 from realm/sk-react-native-21
Update projects to use React Native 0.21
2016-03-10 08:34:23 -08:00
Scott Kyle 1a127b425b Merge pull request #289 from realm/sk-accept-constructor
Accept constructor in create() and objects() methods
2016-03-07 12:23:26 -08:00
Scott Kyle cb4002e25c Update ReactTests to React Native 0.21 2016-03-04 13:31:14 -08:00
Ari Lazier 079b09ddeb Merge pull request #307 from realm/al-test-sort
Test sorting all property types
2016-03-04 13:22:30 -08:00
Ari Lazier c42834d052 test strings too 2016-03-04 07:58:25 -08:00
Ari Lazier 621ee36fad test sorting all properties 2016-03-04 07:55:05 -08:00
Ari Lazier 87ee697f53 react native test app fixes 2016-03-03 15:34:56 -08:00
Ari Lazier 386740a459 copy correct test file 2016-03-03 15:09:23 -08:00
Ari Lazier 548d700ffe object store fixes for js binding 2016-03-03 14:45:44 -08:00
Ari Lazier 5f61fd970c support relative paths when opening realms 2016-03-03 13:33:49 -08:00
Scott Kyle 85832f0f02 Rename some functions according to PR feedback 2016-03-03 02:49:37 -08:00
Scott Kyle 37b2c35169 Add Symbol.iterator method to List and Results
Resolves #235
2016-03-02 23:00:53 -08:00
Scott Kyle 1cba02c34d Fix broken iterator methods on Android
Turns out the JSC included with React Native on Android includes a buggy implementation of ArrayIterator that is missing an exposed next() method, so we implement it ourselves instead.
2016-03-02 22:57:36 -08:00
Scott Kyle 4a81b091cb Accept constructor in create() and objects() methods
This will help the linter prevent spelling mistakes and make some code more easily readable.

Resolves #233
2016-03-01 00:46:03 -08:00
Scott Kyle 72bf66e57e Check for some iterator methods before testing them
Some JS engines (like Chrome) are skipping over values() due to a web compatibility reason for right now.
2016-03-01 00:14:18 -08:00
Scott Kyle bceef3c340 Move encryption-tests to right directory
This wasn't caught in a rebase, oops!
2016-02-29 12:39:00 -08:00
Scott Kyle 4ea2e729b4 Support many Array methods on List and Results
Resolves #18
2016-02-29 03:24:58 -08:00
Scott Kyle 236d0a5eed Ensure List and Results constructors throw exception
This was already done from native code, but needed to happen for the browser shim and be tested.
2016-02-29 03:24:58 -08:00
Scott Kyle 44a29d8dd4 Expose List and Results constructors into JS 2016-02-29 03:24:58 -08:00
Scott Kyle a5ec799a7c Copy whole lib module into JS test bundle
This meant we needed to rename tests/lib to tests/js so they folder names would not conflict.
2016-02-29 03:24:58 -08:00
Scott Kyle 154422a3d1 Make realm instances pass instanceof check 2016-02-29 03:24:58 -08:00
Ari Lazier 4177b0fb40 fix for test naming 2016-02-26 11:18:47 -08:00
Ari Lazier e495cc4685 add encryption support 2016-02-26 11:08:59 -08:00
Tim Anglade 7cc2f69736 Merge pull request #264 from realm/km-js-fixlicense
License update
2016-02-21 18:56:59 -08:00
Scott Kyle 52a1fa9196 Automatically forward port 8082 for Android
Fixes #249
2016-02-21 16:57:05 -08:00
Scott Kyle 1ab3a8a985 No longer delete before npm installing local modules
This doesn't appear to have been necessary and seems to sometimes cause an issue because the packager will start and look for a JS file that was just deleted.
2016-02-19 02:03:54 -08:00
Scott Kyle 2e3a3b5db8 Merge pull request #257 from realm/sk-schema-prop
The schema property should be directly on constructor
2016-02-18 16:27:47 -08:00
Karson Miller 84b06fd8e0 missed a couple 2016-02-18 15:30:44 -08:00
Karson Miller 5e9333b699 no message 2016-02-18 15:30:44 -08:00
Scott Kyle a661350e59 Merge branch 'sk-sorted-results'
* sk-sorted-results:
  Add sorted() method to List
  Further improve argument checking for sorted()
  Improve error message in sorted() method
  Change sortedBy API as discussed
  Allow sortedBy to accept array of properties
  Change sortByProperty to return new Results
2016-02-18 15:21:35 -08:00
Scott Kyle 5b2e7b37af Add script to update version in package.json and iOS
This uses agvtool to update the CURRENT_PROJECT_VERSION and DYLIB_CURRENT_VERSION project variables. The Info.plist files have been updated to propagate this value.
2016-02-18 13:58:12 -08:00
Scott Kyle d322d5dd9c Add property test for objects with constructor 2016-02-18 13:50:45 -08:00
Scott Kyle 5332131c14 Add sorted() method to List 2016-02-18 13:41:11 -08:00
Scott Kyle d847fbceb1 Further improve argument checking for sorted() 2016-02-18 12:55:54 -08:00
Scott Kyle 05d84b23a2 Change sortedBy API as discussed
If provided an array, then each member can optionally be an array of [propName, reverse]
2016-02-18 12:47:18 -08:00
Scott Kyle 76865d0da4 Allow sortedBy to accept array of properties
It now optionally accepts an array of properties for both parameters and the tests have been updated to reflect new capabilities.
2016-02-18 11:58:39 -08:00
Scott Kyle 249bcd8f3f Change sortByProperty to return new Results
The method name changed to sortedBy to reflect that it returns a new Results object and to be more succinct. Also, the second optional argument instead reflects descending (or rather, reverse) since it's an anti-pattern to have an optional argument default to true in JS, and this also follows precedences set by other JS libraries and by Python's sorted function.
2016-02-18 11:58:39 -08:00
Scott Kyle b34e52b290 The schema property should be directly on constructor
The constructor is now also called with `this` set as the constructed object.

Fixes #232
2016-02-18 11:10:02 -08:00
Ari Lazier d70de00923 Merge pull request #254 from realm/al-filtered
Add filtered method to List and Results
2016-02-17 21:32:28 -08:00
Ari Lazier b3486c0d0e final fixes 2016-02-17 20:51:03 -08:00
Ari Lazier 6d02614eaa add List.filtered 2016-02-17 20:24:08 -08:00
Ari Lazier d838d61de4 test query refinement 2016-02-17 20:09:39 -08:00