makeTestData(); Session::start(); $this->faker = \Faker\Factory::create(); Model::reguard(); } public function testTrialFeatures() { config(['ninja.production' => true]); $this->assertFalse($this->account->hasFeature(Account::FEATURE_USERS)); $this->account->trial_plan = 'enterprise'; $this->account->trial_started = now(); $this->account->trial_duration = 60*60*24*31; $this->account->save(); $this->assertFalse($this->account->hasFeature(Account::FEATURE_USERS)); $this->account->trial_plan = 'pro'; $this->account->save(); $this->assertFalse($this->account->hasFeature(Account::FEATURE_USERS)); $this->assertTrue($this->account->hasFeature(Account::FEATURE_CUSTOM_URL)); } public function testTrialFilter() { $plans = collect(['trial_pro','trial_enterprise','no_freebies']); $filtered_plans = $plans->filter(function ($plan){ return strpos($plan, 'trial_') !== false; }); $this->assertEquals($filtered_plans->count(), 2); } }