Commit Graph

59 Commits

Author SHA1 Message Date
Florent Vilmart
c0249283ac Advancements with postgres (#2510)
* Start DB runner from tests

* Connect GridstoreAdapter only when needed

* removes unused package

* better test errors reporting

* Adds support for __op.Delete

* Better test error reporting

* Makes sure all tests can run without crashing

* Use xdescribe to skip test suite

* Removes unused dependencies

* Let volatiles classes be created with PG on start

* Do not fail if class dont exist

* adds index.spec.js to the pg suite

* Use a new config each test to prevent side effects

* Enable EmailVerificationToken specs with pg

* Makes sure failure output is not cut

* Reduces number of ignored tests in ParseObject.spec

* Inspect reconfiguration errors

* Mark GlobalConfig is incompatible with PG

- Problem is with nested updates (param.prop = value)

* PG: Nested JSON queries and updates

- Adds support for nested json and . operator queries
- Adds debug support for PG adapter
- Adds loglevel support in helper

* Enable working specs in ParseUser

* Sets default logLevel in tests to undefined

* Adds File type support, retores purchaseValidation specs

* Adds support for updating jsonb objects

- Restores PushController tests

* Proper implementation of deleteByQuery and ORs

- Adds ParseInstallation spec to the test suite

* xit only failing tests

* Nit on ParseAPI spec

* add sorting operator

* properly bound order keys

* reverts describe_only_db behavior

* Enables passing tests

* Adds basic support for relations, upsertOneObject aliased to createObject

* progress on queries options

* Fix ACL update related problems

* Creates relation tables on class creation

* Adds Relation tests

* remove flaky tests

* use promises instead of CB

* disable flaky test

* nits

* Fixes on schema spec

- Next thing is to implemenet geopoint and files correctly

* fix failues

* Basic GeoPoint support

* Adds support for $nearSphere/$maxDistance geopoint queries

* enable passing tests

* drop tables afterEach for PG, clean up relation tables too

* Better initialization/dropTables
2016-08-15 16:48:39 -04:00
Drew
ae36200d1f Disable tests that don't work in Postgres, and don't start a mongo for postgres tests (#2481)
* Disable tests that don't work in Postgres, and don't start a mongo for postgres tests

* Remove unnecessary chages

* remove more unnecessary chagnes
2016-08-07 22:21:01 -04:00
sud
e4c2e65263 Non trivial before save pointer clobber (#2406)
* test case to check beforeSave changes clobbers fetched pointer fields
Basically if beforeSave makes any changes to the object it is trying to save, the fetched pointer fields on the client gets clobbered to only pointer.

* propogate only changed fields to response.
Earlier we were returning all fields even if any changes happened in beforeSave. This causes the fetched pointer fields on the client to get clobbered to only pointers.
This fix returns only the changed fields thus avoiding pointer clobber.

* The goal of this comparision seems to be checking that the all returns the user correctly.
Also it is consistent with the hosted parse that user.username not returned from PUT request.
2016-08-05 08:53:54 -04:00
Florent Vilmart
c9fc80984a Makes sure we don't strip authData or session token from users using masterKey (#2348)
* Makes sure we don't strip auth data or session token from users queried with masterKey (#2342))

* nit: test title
2016-07-23 11:14:53 -07:00
Dan Huang
c81f48aae6 don't serve null authData values (#2320) 2016-07-18 23:00:16 -07:00
Florent Vilmart
025482ea1a Fix null relation problem (#2319)
* Add null check for relation type map.

For relations that are not explicitly defined in the schema, we need a null check here.

* Making change to force rebuild.

* Reverting change.

* Adds test
2016-07-18 22:58:37 -07:00
Florent Vilmart
32f7230aca Creates a new sessionToken when updating password (#2266)
* Creates a new sessionToken when updating password

* Adds test ensuring email is properly sent when upgrading from anon
2016-07-13 07:18:24 -04:00
Florent Vilmart
61aa5a8d62 Let auth data be updated on login (#2219)
* Let user update authData token upon login

* Adds tests that ensures linked authData isnt overriden

* fixes focused testing problem
2016-07-08 21:49:46 -07:00
Florent Vilmart
147b493e23 Results invalid session when providing an invalid session token (#2154)
* Results invalid session when providing an invalid session token

* Reverts unsafe loggers

* Fixes failing tests

- The tests were failin when run in sequence as we called done() before the JSSDK had a chance to register the session token, therefore having a proper logout call in afterEach
2016-06-26 23:20:02 -04:00
Drew
ab06055369 Postgres exclude failing tests (#2081)
* reload the right data

More passing postgres tests

Handle schema updates, and $in for non array columns

remove authdata from user and implement ensureUniqueness

Make some tests work, detect existing classes

Throw proper error for unique index violation

fix findOneAndUpdate

Support more types

support more type

Support boolean, fix _rperm/_wperm, add TODO

Support string types and also simplify tests

Move operator flattening into Parse Server and out of mongo adapters

Move authdata transform for create into Parse Server

Move authdata transforms completely in to Parse Server

Fix test setup

inline addSchema

Inject default schema to response from DB adapter

* Mark tests that don't work in Postgres

* Exclude one more test

* Exclude some more failing tests

* Exclude more tests
2016-06-17 12:59:16 -04:00
Drew Gross
a69a88f3a4 Fix some stuff 2016-06-15 13:11:51 -07:00
Drew Gross
f75c8b3a4d index on unique-indexes: c454180 Revert "Log objects rather than JSON stringified objects (#1922)"
reconfigure username/email tests

Fix broken cloud code

Save callback to variable

undo

Fix all tests where connections are left open after server closes.

Fix issues caused by missing gridstore adapter

remove uses of _collection

reorder find() arguments

Accept a database adapter as a parameter

sudo maybe?

use postgres username

reorder find() arguments

Build objects with default fields correctly

Don't tell adapter about ACL

WIP
2016-06-15 13:11:51 -07:00
Drew
7e868b2dcc Unique indexes (#1971)
* Add unique indexing

* Add unique indexing for username/email

* WIP

* Finish unique indexes

* Notes on how to upgrade to 2.3.0 safely

* index on unique-indexes: c454180 Revert "Log objects rather than JSON stringified objects (#1922)"

* reconfigure username/email tests

* Start dealing with test shittyness

* Remove tests for files that we are removing

* most tests passing

* fix failing test

* Make specific server config for tests async

* Fix more tests

* fix more tests

* Fix another test

* fix more tests

* Fix email validation

* move some stuff around

* Destroy server to ensure all connections are gone

* Fix broken cloud code

* Save callback to variable

* no need to delete non existant cloud

* undo

* Fix all tests where connections are left open after server closes.

* Fix issues caused by missing gridstore adapter

* Update guide for 2.3.0 and fix final tests

* use strict

* don't use features that won't work in node 4

* Fix syntax error

* Fix typos

* Add duplicate finding command

* Update 2.3.0.md
2016-06-10 20:27:21 -07:00
Drew
b2183680be Refactor cloud code tests (#1837)
* Move cloud code tests

* Remove _removeHook calls that are no longer necessary

* Use Strict
2016-05-19 13:38:16 -07:00
Marco Cheung
d0c3535a39 Fix error when unset user email (#1778) 2016-05-13 10:51:01 -07:00
Drew
d33dd68cc5 Add revokeSessionOnPasswordReset option. Closes #1584 (#1597)
* Add revokeSessionOnPasswordReset option

* Fix nits
2016-04-22 18:21:50 -04:00
Drew
7b91ee98ed Fixes #1568 (#1574) 2016-04-20 18:42:18 -04:00
Florent Vilmart
59b4047de8 Defers the session creation after DB operation (#1561) 2016-04-20 11:57:38 -04:00
Drew
5d37755d88 Test facebook unlinking (regression test #1532) (#1538) 2016-04-20 00:31:15 -07:00
Florent Vilmart
73a3db44ab Fixes #1444 (#1451) 2016-04-11 11:27:55 -07:00
Florent Vilmart
b433fb9b4e Prevents _User lock out when setting ACL on signup or afterwards (#1429) 2016-04-08 13:19:41 -04:00
Jeremy May
f99b5588ab Added session length option for session tokens to server configuration 2016-04-02 11:36:47 -04:00
yuzeh
1b8e613dfb Clean authData of null values on _User update
Adds a step to the RestWrite#execute chain: it cleans the response
authData object of null values.

For example, this:

{"authData": {"anonymous": null}, "updatedAt", ...}

will be transformed to this:

{"updatedAt", ...}

And this:

{"authData": {"anonymous": null, "twitter": ...}, "updatedAt", ...}

will be transformed to this:

{"authData": {"twitter": ...}, "updatedAt", ...}

Fixing this issue will fix anonymous user upgrades from the Android SDK.
2016-03-29 14:42:37 -07:00
Florent Vilmart
a31baa4ebd differentiate signup and login createdWith.action on _Session 2016-03-20 15:58:17 -04:00
Fosco Marotto
877d29daf8 Clear the session-user cache when changing _User objects 2016-03-17 02:06:26 -07:00
Florent Vilmart
461ddcbd05 Makes sure the location in results has the proper objectId 2016-03-16 20:37:59 -04:00
Florent Vilmart
cadd6fe406 Sanitizes RestWrite.data before passing to inflated object 2016-03-11 23:03:47 -05:00
Florent Vilmart
7d787328c5 Merge pull request #952 from ParsePlatform/flovilmart.OAuthImprovements
AuthData logic refactor
2016-03-11 15:38:19 -05:00
Florent Vilmart
daad05a00f removes key transformation for authData from restWrite, ensures authData is set in hooks 2016-03-11 15:14:53 -05:00
Florent Vilmart
1ed868b99c Fixes #935, cleans up authData null keys on login for android crash 2016-03-11 11:14:58 -05:00
Florent Vilmart
bcffcbade2 Fix when multiple authData keys are passed 2016-03-11 09:02:21 -05:00
Drew Gross
befcd453a4 Add test 2016-03-02 21:01:24 -08:00
Florent Vilmart
91d9724182 Adds reset password logic 2016-02-29 18:55:15 -05:00
Florent Vilmart
f3bb2c99e0 Refactor and advancements
- Drops mailController, centralized in UserController
- Adds views folder for change_password
- Improves PromiseRouter to support text results
- Improves PromiseRouter to support empty responses for redirects
- Adds options to AdaptableController
- UsersController gracefully fails when no adapter is set
- Refactors GlobalConfig into same style for Routers
2016-02-29 18:55:14 -05:00
Florent Vilmart
7dd765256c Refactors verify_email, adds public html 2016-02-29 18:52:11 -05:00
Florent Vilmart
0b307bc22f Improves AdapterLoader, enforces configuraiton on Adapters 2016-02-29 18:52:10 -05:00
Drew Gross
8dc37b9d30 Exploring the interface of a mail adapter
Add some tests and demonstrate the adapter loading interface
2016-02-29 18:52:10 -05:00
Simon Bengtsson
4eb9bd442f Adds test that makes sure beforeSave is not called on User when logging in with a provider 2016-02-27 15:57:44 +01:00
Fosco Marotto
1b83d9c621 Fix for #413 - support empty authData on signup 2016-02-26 05:05:15 -08:00
Nikita Lutsenko
9d342a8aee Fix missing file URL for short-circuited _User in RestWrite. 2016-02-24 15:18:40 -08:00
Nikita Lutsenko
bc90effd32 Send a sessionToken back on /users/me. 2016-02-24 12:54:04 -08:00
Florent Vilmart
e010fd82f2 Generic OAuth provider support
Refactors facebook login into oauth generic login

Adds additional oauth2 providers

adds ability to pass an oAuth validator in the config

Adds Twitter validation support + OAuth 1 client

Support auth_token instead of access_token for twitter

Improves code coverage of OAuth

Adds validation of oauth provider structures

Better coverage of the OAuth spec

100% coverage of OAuth1.js

Adds passing auth_token_secret for Twitter auth.

Refactors auth validation methods to include authData parameter

- Adds ability to extens oauth validator through configuration
- Adds ability to extend oauth validator through external module (file or package)
- Adds more tests
- Adds tests to login with custom auth provider

Adds more tests for REST API

fixes twitter auth_token

f
2016-02-17 08:06:30 -05:00
Florent Vilmart
86c502c702 Removes installationId from _User 2016-02-16 12:38:45 -05:00
Fosco Marotto
b1a9536cc6 Merge pull request #438 from flovilmart/flovilmart.fix-default_User.metadata
Adds locked down ACL on _User
2016-02-16 08:11:21 -08:00
Florent Vilmart
20eca71a6f Adds locked down ACL on _User 2016-02-15 21:23:17 -05:00
Florent Vilmart
be92b4af67 Adds test to make sure Parse.User.become is functional 2016-02-15 10:21:01 -05:00
Florent Vilmart
ea07eb506d Clears session on password change
- Fixes error type when passing an invalid session token
2016-02-15 10:15:47 -05:00
Francis Lessard
56552537a1 Add test to the session token hasn't changed 2016-02-12 08:15:58 -05:00
Fosco Marotto
8d89838afb Merge pull request #254 from ParsePlatform/fosco.logout
Removed extra /logout handler
2016-02-10 16:52:30 -08:00
Fosco Marotto
dee640c7d0 Added logout test and fixed error in restwrite 2016-02-10 14:52:42 -08:00