Attendize/tests/UserTest.php

148 lines
4.3 KiB
PHP
Raw Normal View History

2016-04-27 23:15:49 +00:00
<?php
use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;
2016-06-16 02:09:54 +00:00
use App\Attendize\Utils;
2016-04-27 23:15:49 +00:00
class UserTest extends TestCase
{
2016-06-16 22:59:31 +00:00
public function test_edit_user_is_successful()
2016-04-27 23:15:49 +00:00
{
2016-06-16 22:59:31 +00:00
$this->actingAs($this->test_user);
2016-06-16 01:36:09 +00:00
2016-06-16 23:28:42 +00:00
factory(App\Models\Organiser::class)->create(['account_id' => 1]);
2016-06-16 22:59:31 +00:00
$server = array('HTTP_X-Requested-With' => 'XMLHttpRequest');
2016-04-27 23:15:49 +00:00
2016-06-16 22:59:31 +00:00
$firstName = $this->faker->firstName;
$lastName = $this->faker->lastName;
$email = 'new@email.com.au';
$post = array(
'first_name' => $firstName,
'last_name' => $lastName,
'email' => $email,
);
$this->call('post', route('postEditUser'), $post, $server);
$this->seeJson([
'status' => 'success',
'message' => 'Successfully Saved Details',
2016-06-16 22:59:31 +00:00
]);
$user = App\Models\User::find($this->test_user->id);
$this->assertEquals($firstName, $user->first_name);
$this->assertEquals($lastName, $user->last_name);
$this->assertEquals($email, $user->email);
}
2016-06-16 23:28:42 +00:00
public function test_edit_user_is_successful_when_changing_password()
{
$this->actingAs($this->test_user);
$previousPassword = $this->test_user->password;
factory(App\Models\Organiser::class)->create(['account_id' => 1]);
$server = array('HTTP_X-Requested-With' => 'XMLHttpRequest');
$firstName = $this->faker->firstName;
$lastName = $this->faker->lastName;
$email = 'new@email.com.au';
$post = array(
'first_name' => $firstName,
'last_name' => $lastName,
'email' => $email,
'password' => $this->test_user_password,
'new_password' => 'newpassword',
'new_password_confirmation' => 'newpassword',
);
$this->call('post', route('postEditUser'), $post, $server);
$this->seeJson([
'status' => 'success',
'message' => 'Successfully Saved Details',
2016-06-16 23:28:42 +00:00
]);
$user = App\Models\User::find($this->test_user->id);
$this->assertEquals($firstName, $user->first_name);
$this->assertEquals($lastName, $user->last_name);
$this->assertEquals($email, $user->email);
$this->assertNotEquals($previousPassword, $user->password);
}
public function test_edit_user_is_unsuccessful_because_of_invalid_email()
{
$this->actingAs($this->test_user);
factory(App\Models\Organiser::class)->create(['account_id' => 1]);
$server = array('HTTP_X-Requested-With' => 'XMLHttpRequest');
$firstName = $this->faker->firstName;
$lastName = $this->faker->lastName;
$email = 'new@email';
$post = array(
'first_name' => $firstName,
'last_name' => $lastName,
'email' => $email,
);
$this->call('post', route('postEditUser'), $post, $server);
$this->seeJson([
'status' => 'error',
]);
}
public function test_edit_user_is_unsuccessful_because_of_no_first_name()
{
$this->actingAs($this->test_user);
factory(App\Models\Organiser::class)->create(['account_id' => 1]);
$server = array('HTTP_X-Requested-With' => 'XMLHttpRequest');
$lastName = $this->faker->lastName;
$email = 'new@email';
$post = array(
'first_name' => '',
'last_name' => $lastName,
'email' => $email,
);
$this->call('post', route('postEditUser'), $post, $server);
$this->seeJson([
'status' => 'error',
]);
}
public function test_edit_user_is_unsuccessful_because_of_no_last_name()
{
$this->actingAs($this->test_user);
factory(App\Models\Organiser::class)->create(['account_id' => 1]);
$server = array('HTTP_X-Requested-With' => 'XMLHttpRequest');
$firstName = $this->faker->firstName;
$email = 'new@email';
$post = array(
'first_name' => $firstName,
'last_name' => '',
'email' => $email,
);
$this->call('post', route('postEditUser'), $post, $server);
$this->seeJson([
'status' => 'error',
]);
}
2016-04-27 23:15:49 +00:00
}