Beispiel #1
0
 public function testReset()
 {
     // add only last id filter
     $this->filter->addLastIdFilter(1);
     $filters = $this->getAppliedFilters($this->filter);
     $this->assertCount(1, $filters['complex_filter']);
     // add date filter in initial mode
     $this->filter->addDateFilter('created_at', 'to', new \DateTime());
     $filters = $this->getAppliedFilters($this->filter);
     $this->assertCount(2, $filters['complex_filter']);
     // add dummy simple filter
     $this->filter->addFilter('test', ['test' => true]);
     $filters = $this->getAppliedFilters($this->filter);
     $this->assertCount(1, $filters['filter']);
     // reset only simple filter
     $this->filter->reset('filter');
     $filters = $this->getAppliedFilters($this->filter);
     $this->assertArrayNotHasKey('filter', $filters);
     $this->filter->reset();
     $filters = $this->getAppliedFilters($this->filter);
     $this->assertArrayNotHasKey('complex_filter', $filters);
     $this->assertArrayNotHasKey('filter', $filters);
     // add dummy simple filter
     $this->filter->addFilter('test', ['test' => true]);
     $filters = $this->getAppliedFilters($this->filter);
     $this->assertCount(1, $filters['filter']);
     $this->filter->reset(BatchFilterBag::FILTER_TYPE_SIMPLE, 'test');
     $filters = $this->getAppliedFilters($this->filter);
     $this->assertFalse(isset($filters['filter']['test']));
 }
 /**
  * {@inheritdoc}
  */
 public function rewind()
 {
     if (!$this->entitiesIdsBufferImmutable) {
         $this->entitiesIdsBuffer = [];
     }
     $this->current = null;
     $this->lastSyncDate = clone $this->lastSyncDateInitialValue;
     $this->filter->reset();
     $this->next();
 }
 /**
  * {@inheritdoc}
  */
 public function rewind()
 {
     if (false === $this->loaded) {
         $this->dependencies = $this->getDependencies();
         $this->loaded = true;
     }
     $this->entitiesIdsBuffer = [];
     $this->current = null;
     $this->lastSyncDate = clone $this->lastSyncDateInitialValue;
     $this->filter->reset();
     $this->next();
 }