@@ -49,7 +49,7 @@ describe('miscellaneous', function() {
49
49
} ) ;
50
50
} ) ;
51
51
52
- fit ( 'fail to create a duplicate username' , done => {
52
+ it ( 'fail to create a duplicate username' , done => {
53
53
let numCreated = 0 ;
54
54
let numFailed = 0 ;
55
55
let p1 = createTestUser ( ) ;
@@ -80,7 +80,7 @@ describe('miscellaneous', function() {
80
80
. catch ( done ) ;
81
81
} ) ;
82
82
83
- fit ( 'ensure that if people already have duplicate users, they can still sign up new users' , done => {
83
+ it ( 'ensure that if people already have duplicate users, they can still sign up new users' , done => {
84
84
let config = new Config ( 'test' ) ;
85
85
config . database . adapter . createObject ( '_User' , { objectId : 'x' , username : 'u' } , requiredUserFields )
86
86
. then ( ( ) => config . database . adapter . createObject ( '_User' , { objectId : 'y' , username : 'u' } , requiredUserFields ) )
@@ -106,7 +106,7 @@ describe('miscellaneous', function() {
106
106
} ) ;
107
107
} ) ;
108
108
109
- fit ( 'ensure that email is uniquely indexed' , done => {
109
+ it ( 'ensure that email is uniquely indexed' , done => {
110
110
let numCreated = 0 ;
111
111
let numFailed = 0 ;
112
112
@@ -148,15 +148,57 @@ describe('miscellaneous', function() {
148
148
} ) ;
149
149
150
150
it ( 'ensure that if people already have duplicate emails, they can still sign up new users' , done => {
151
-
152
- } ) ;
153
-
154
- it ( 'ensure you get the right error if you have 2 users with the same email' , done => {
155
-
151
+ let config = new Config ( 'test' ) ;
152
+ config . database . adapter . createObject ( '_User' , { objectId :
'x' , email :
'[email protected] ' } , requiredUserFields )
153
+ . then ( ( ) => config . database . adapter . createObject ( '_User' , { objectId :
'y' , email :
'[email protected] ' } , requiredUserFields ) )
154
+ . then ( ( ) => {
155
+ let user = new Parse . User ( ) ;
156
+ user . setPassword ( 'asdf' ) ;
157
+ user . setUsername ( 'qqq' ) ;
158
+ user . setEmail ( '[email protected] ' ) ;
159
+ return user . signUp ( ) ;
160
+ } )
161
+ . then ( ( ) => {
162
+ let user = new Parse . User ( ) ;
163
+ user . setPassword ( 'asdf' ) ;
164
+ user . setUsername ( 'www' ) ;
165
+ user . setEmail ( '[email protected] ' ) ;
166
+ user . signUp ( )
167
+ . catch ( error => {
168
+ expect ( error . code ) . toEqual ( Parse . Error . EMAIL_TAKEN ) ;
169
+ done ( ) ;
170
+ } ) ;
171
+ } )
172
+ . catch ( error => {
173
+ console . log ( error ) ;
174
+ fail ( 'save should have succeeded' ) ;
175
+ done ( ) ;
176
+ } ) ;
156
177
} ) ;
157
178
158
- it ( 'ensure that if you try to sign up a user with a unique username and email, but duplicates in some other field that has a uniqueness constraint, you get a regular duplicate value error' , done => {
159
-
179
+ fit ( 'ensure that if you try to sign up a user with a unique username and email, but duplicates in some other field that has a uniqueness constraint, you get a regular duplicate value error' , done => {
180
+ let config = new Config ( 'test' ) ;
181
+ config . database . adapter . ensureUniqueness ( '_User' , [ 'randomField' ] , requiredUserFields )
182
+ . then ( ( ) => {
183
+ let user = new Parse . User ( ) ;
184
+ user . setPassword ( 'asdf' ) ;
185
+ user . setUsername ( '1' ) ;
186
+ user . setEmail ( '[email protected] ' ) ;
187
+ user . set ( 'randomField' , 'a' ) ;
188
+ return user . signUp ( )
189
+ } )
190
+ . then ( ( ) => {
191
+ let user = new Parse . User ( ) ;
192
+ user . setPassword ( 'asdf' ) ;
193
+ user . setUsername ( '2' ) ;
194
+ user . setEmail ( '[email protected] ' ) ;
195
+ user . set ( 'randomField' , 'a' ) ;
196
+ return user . signUp ( )
197
+ } )
198
+ . catch ( error => {
199
+ expect ( error . code ) . toEqual ( Parse . Error . DUPLICATE_VALUE ) ;
200
+ done ( ) ;
201
+ } ) ;
160
202
} ) ;
161
203
162
204
it ( 'succeed in logging in' , function ( done ) {
0 commit comments