/** * @test */ public function associateWithExistingUserIfEmailAddressMatches() { $firstName = 'Jane'; $lastName = 'Lork'; //allow GUID to be set User::unguard(); User::create(['guid' => md5(uniqid() . microtime()), 'email' => $this->providerUser->getEmail(), 'first_name' => $firstName, 'last_name' => $lastName, 'primary_address_id' => Address::firstOrFail()->id]); User::reguard(); $this->call('GET', '/login/' . ThirdPartyAuthenticator::PROVIDER_GOOGLE, ['code' => uniqid()]); // logged in as pre-existing user $this->followRedirects()->see($firstName . ' ' . $lastName); //assert user was not created $name = explode(' ', $this->providerUser->getName()); $createdUser = User::where('first_name', $name[0])->where('last_name', $name[1])->where('email', $this->providerUser->getEmail())->where('avatar', $this->providerUser->getAvatar())->count() > 0; $this->assertFalse($createdUser); }