Skip to content

Commit d46107e

Browse files
authored
test: Improve ParseUser::become test (#507)
1 parent a269f9e commit d46107e

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

tests/Parse/ParseUserTest.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
namespace Parse\Test;
44

5+
use Parse\ParseCloud;
56
use Parse\ParseClient;
67
use Parse\ParseObject;
78
use Parse\ParseQuery;
@@ -328,6 +329,16 @@ public function testBecome()
328329
ParseUser::become('garbage_token');
329330
}
330331

332+
public function testBecomeFromCloudCode()
333+
{
334+
$sessionToken = ParseCloud::run('createTestUser', []);
335+
336+
$user = ParseUser::become($sessionToken);
337+
$this->assertEquals(ParseUser::getCurrentUser(), $user);
338+
$this->assertEquals('harry', $user->get('username'));
339+
$this->assertEquals($user->getSessionToken(), $sessionToken);
340+
}
341+
331342
public function testCannotSingUpAlreadyExistingUser()
332343
{
333344
$this->testUserSignUp();

tests/cloud-code.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,15 @@ Parse.Cloud.define('bar', (request) => {
77
}
88
});
99

10+
Parse.Cloud.define('createTestUser', async (request) => {
11+
const user = new Parse.User();
12+
user.set('username', 'harry');
13+
user.set('password', 'potter');
14+
await user.signUp();
15+
const loggedIn = await Parse.User.logIn('harry', 'potter');
16+
return loggedIn.getSessionToken();
17+
});
18+
1019
Parse.Cloud.define('foo', (request) => {
1120
var key1 = request.params.key1;
1221
var key2 = request.params.key2;

0 commit comments

Comments
 (0)