public function testGetTypesList() { $list = Achievement::getAllTypesList(); $this->assertCount(4, $list); $this->assertTrue(in_array(Achievement::TYPE_BADGE, $list)); $this->assertTrue(in_array(Achievement::TYPE_LEVEL, $list)); $this->assertTrue(in_array(Achievement::TYPE_POINTS, $list)); $this->assertTrue(in_array(Achievement::TYPE_QUEST, $list)); }
/** * Returns the number of achievements of each type for certain user * * @param User|string $user A User model or userId * @param array|string $types List of types in a comma-separated string or array. * All the types will be returned by default * @return Collection|Achievement[] */ public function getUserAchievements($user, $types = []) { $userId = $user instanceof User ? $user->getUserId() : $user; $types = empty($types) ? Achievement::getAllTypesList() : $types; $types = is_array($types) ? implode(',', $types) : $types; return $this->getResourceCollection(new Route(self::USER_ACHIEVEMENTS_ROUTE, ['userId' => $userId], ['types' => $types]), 'achievements', 'Wonnova\\SDK\\Model\\Achievement'); }