public function testTemplateCreate() { $service = new \Box\Mod\Email\Service(); $id = rand(1, 100); $model = new \Model_ActivityClientEmail(); $model->loadBean(new \RedBeanPHP\OODBBean()); $model->id = $id; $db = $this->getMockBuilder('Box_Database')->getMock(); $db->expects($this->atLeastOnce())->method('store')->will($this->returnValue($id)); $emailTemplateModel = new \Model_EmailTemplate(); $emailTemplateModel->loadBean(new \RedBeanPHP\OODBBean()); $db->expects($this->atLeastOnce())->method('dispense')->will($this->returnValue($emailTemplateModel)); $di = new \Box_Di(); $di['db'] = $db; $di['logger'] = $this->getMockBuilder('Box_Log')->getMock(); $service->setDi($di); $data = array('action_code' => 'Action_code', 'subject' => 'Subject', 'content' => 'Content', 'category' => 'category'); $result = $service->templateCreate($data['action_code'], $data['subject'], $data['content'], 1, $data['category']); $this->assertEquals($emailTemplateModel, $result); }