/**
  * @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);
 }