/** * @param $result * @return ActivityCollection */ private function parseResultIntoCollection($result) { $activityCollection = new ActivityCollection(); while ($row = $result->fetch()) { $activityCollection->add($this->mapActivityRowToActivity($row)); } return $activityCollection; }
/** * @test */ public function shouldIterateThroughStorages() { $this->activityCollection->add(Activity::withUserDateActivityCount(User::named('test'), new \DateTime("2015-12-30 23:50:01"), 1)); $this->activityCollection->add(Activity::withUserDateActivityCount(User::named('test'), new \DateTime("2015-12-31 23:50:01"), 1)); $this->activityCollection->add(Activity::withUserDateActivityCount(User::named('test'), new \DateTime("2015-12-31 23:50:01"), 1)); $dates = ['2015-12-30', '2015-12-31']; $i = 0; foreach ($this->activityCollection as $day => $activity) { $this->assertSame($dates[$i], $day); $this->assertInstanceOf(Activity::class, $activity); $i++; } $this->assertSame(2, $i); }