/** * @covers Alchemy\Phrasea\SearchEngine\SearchEngineOptions */ public function testSerialize() { $options = new SearchEngineOptions(self::$DI['app']); $options->onCollections([self::$DI['collection']]); $options->allowBusinessFieldsOn([self::$DI['collection']]); foreach (self::$DI['collection']->get_databox()->get_meta_structure() as $field) { $options->setFields([$field]); $options->setDateFields([$field]); break; } $min_date = new \DateTime('-5 days'); $max_date = new \DateTime('+5 days'); $options->setMinDate(\DateTime::createFromFormat(DATE_ATOM, $min_date->format(DATE_ATOM))); $options->setMaxDate(\DateTime::createFromFormat(DATE_ATOM, $max_date->format(DATE_ATOM))); $serialized = $options->serialize(); $this->assertEquals($options, SearchEngineOptions::hydrate(self::$DI['app'], $serialized)); }