public function run() { $faker = TestCase::faker(); for ($i = 1; $i <= 10; $i++) { $userAddress = UserAddress::create(array('user_id' => TestCase::getFixture('users.jon_snow')->id, 'name' => $faker->name, 'firstname' => $faker->firstName, 'lastname' => $faker->lastName, 'address1' => $faker->streetAddress, 'zipcode' => $faker->postcode, 'city' => $faker->city, 'country' => $faker->country, 'phone_work' => rand(0, 1) === 0 ? null : $faker->phoneNumber, 'phone_home' => rand(0, 1) === 0 ? null : $faker->phoneNumber, 'phone_mobile' => rand(0, 1) === 0 ? null : $faker->phoneNumber)); TestCase::addFixture('user_addresses.user_address_' . $i, $userAddress); } }
public function testIndex() { $user = TestCase::getFixture('users.jon_snow'); $response = $this->callJSON('GET', "/api/v1/users/{$user->uid}/addresses"); $this->assertResponseOk(); $this->assertResponseJSONValid(); $json = $this->getJSONContent(); $this->assertJSONCollectionResponse('user_addresses'); $this->assertJSONTypes('user_addresses[0]', $this->userAddressJSONFormat); $this->assertEquals(0, $json->response->offset); $this->assertEquals(UserAddress::where('user_id', '=', $user->id)->count(), $json->response->total); }
/** * Create a new UserAddress * * @example * $user = Subbly\Model\UserAddress; * Subbly::api('subbly.user_address')->create($userAddress); * * Subbly::api('subbly.user_address')->create(array( * 'firstname' => 'Jon', * 'lastname' => 'Snow', * )); * * @param \Subbly\Model\UserAddress|array $userAddress * @param \Subbly\Model\User|null $user * * @return \Subbly\Model\UserAddress * * @throws \Subbly\Api\Service\Exception * * @api */ public function create($userAddress, $user) { if (!$user instanceof User) { $user = $this->api('subbly.user')->find($user); } if (is_array($userAddress)) { $userAddress = new UserAddress($userAddress); } if ($userAddress instanceof UserAddress) { if ($this->fireEvent('creating', array($userAddress)) === false) { return false; } $userAddress->user()->associate($user); $userAddress->setCaller($this); $userAddress->save(); $this->fireEvent('created', array($userAddress)); $userAddress = $this->find($userAddress->uid); return $userAddress; } throw new Exception(sprintf(Exception::CANT_CREATE_MODEL, $this->modelClass, $this->name())); }