/** * @depends testCreateStarredTables */ public function testUnmarkModelAsStarredForAllUsers() { $super = User::getByUsername('super'); Yii::app()->user->userModel = $super; $steven = UserTestHelper::createBasicUser('Steven'); $account = new Account(); $account->owner = $super; $account->name = 'Test Account'; $account->officePhone = '1234567890'; $this->assertTrue($account->save()); StarredUtil::markModelAsStarred($account); Yii::app()->user->userModel = $steven; StarredUtil::markModelAsStarred($account); $tableName = StarredUtil::getStarredTableName('Account'); $sql = "SELECT id FROM {$tableName} WHERE model_id = :modelId;"; $rows = R::getAll($sql, $values = array(':modelId' => $account->id)); $this->assertCount(2, $rows); StarredUtil::unmarkModelAsStarredForAllUsers($account); $sql = "SELECT id FROM {$tableName} WHERE model_id = :modelId;"; $rows = R::getAll($sql, $values = array(':modelId' => $account->id)); $this->assertCount(0, $rows); }
/** * @depends testCreateStarredTables */ public function testUnmarkModelAsStarredForAllUsers() { $super = User::getByUsername('super'); Yii::app()->user->userModel = $super; $steven = UserTestHelper::createBasicUser('Steven'); $account = new Account(); $account->owner = $super; $account->name = 'Test Account'; $account->officePhone = '1234567890'; $account->addPermissions($steven, Permission::READ); $this->assertTrue($account->save()); AllPermissionsOptimizationUtil::securableItemGivenReadPermissionsForUser($account, $steven); StarredUtil::markModelAsStarred($account); Yii::app()->user->userModel = $steven; StarredUtil::markModelAsStarred($account); $starredRecords = AccountStarred::getCountByUserIdAndModelId(null, $account->id); $this->assertEquals(2, $starredRecords); StarredUtil::unmarkModelAsStarredForAllUsers($account); $starredRecords = AccountStarred::getCountByUserIdAndModelId(null, $account->id); $this->assertEquals(0, $starredRecords); }