public function testCreateActionByUserNotTrialPlan() { //POST //Save fake user to DB $account = new Users_Model_User(); $account->avatar = null; $account->login = '******' . date('YmdHis'); $account->email = 'testCreateActionByUserNotTrialPlan' . time() . '@example.org'; $account->password = md5('password'); $account->role = Users_Model_User::ROLE_USER; $account->status = Users_Model_User::STATUS_ACTIVE; $account->save(); //Login Zend_Auth::getInstance()->getStorage()->write($account); //Get plan $subscriptionPlansTable = new Subscriptions_Model_SubscriptionPlans_Table(); $subscriptionPlan = $subscriptionPlansTable->getByType(Subscriptions_Model_SubscriptionPlan::PLAN_TYPE_MONTHLY); $this->request->setMethod('POST')->setPost(array('id' => $subscriptionPlan->id)); $this->dispatch('/subscriptions/index/create'); $this->assertModule('subscriptions'); $this->assertController('index'); $this->assertAction('create'); }
public function testGetExpirationDate() { //Create user $account = new Users_Model_User(); $account->avatar = null; $account->login = '******' . date('YmdHis'); $account->email = 'testGetExpirationDate' . time() . '@example.org'; $account->password = md5('password'); $account->role = Users_Model_User::ROLE_USER; $account->status = Users_Model_User::STATUS_ACTIVE; $account->save(); //Get subscription plan $subscriptionPlansTable = new Subscriptions_Model_SubscriptionPlans_Table(); $subscriptionManager = new Subscriptions_Model_Subscription_Manager(); //Get plan with infinite subscription $subscriptionPlan = $subscriptionPlansTable->getByType(Subscriptions_Model_SubscriptionPlan::PLAN_TYPE_INFINITE); $expirationDate = $subscriptionManager->getExpirationDate($account->id, $subscriptionPlan->id); $this->assertNull($expirationDate); //Get plan with monthly subscription $subscriptionPlan = $subscriptionPlansTable->getByType(Subscriptions_Model_SubscriptionPlan::PLAN_TYPE_MONTHLY); $expirationDate = $subscriptionManager->getExpirationDate($account->id, $subscriptionPlan->id); $this->assertEquals(date('Y-m-d H:i:s', mktime(date("H"), date("i"), date("s"), date("m"), date("d") + 30, date("Y"))), $expirationDate); }