/** * @depends testCreateAndGetEmailMessageActivityById */ public function testRequiredAttributes() { $emailMessageActivity = new EmailMessageActivity(); $this->assertFalse($emailMessageActivity->save()); $errors = $emailMessageActivity->getErrors(); $this->assertNotEmpty($errors); $this->assertCount(2, $errors); $this->assertArrayHasKey('type', $errors); $this->assertEquals('Type cannot be blank.', $errors['type'][0]); $this->assertArrayHasKey('quantity', $errors); $this->assertEquals('Quantity cannot be blank.', $errors['quantity'][0]); $emailMessageActivity->type = EmailMessageActivity::TYPE_CLICK; $emailMessageActivity->quantity = 5; $emailMessageUrl = new EmailMessageUrl(); $emailMessageUrl->url = 'http://www.example.com'; $emailMessageActivity->emailMessageUrl = $emailMessageUrl; $this->assertTrue($emailMessageActivity->save()); $id = $emailMessageActivity->id; unset($emailMessageActivity); $emailMessageActivity = EmailMessageActivity::getById($id); $this->assertEquals(EmailMessageActivity::TYPE_CLICK, $emailMessageActivity->type); $this->assertEquals(5, $emailMessageActivity->quantity); $this->assertEquals('http://www.example.com', $emailMessageActivity->emailMessageUrl->url); }
/** * @return \EmailMessageActivity */ protected function createSpamEmailMessageActivity() { $emailMessageActivity = new EmailMessageActivity(); $emailMessageActivity->type = EmailMessageActivity::TYPE_SPAM; $emailMessageActivity->quantity = 10; $emailMessageActivity->save(); return $emailMessageActivity; }