/** * Test export method if filter was set * * @dataProvider getGenderFilterValueDataProvider * * @param int $genderFilterValue */ public function testExportWithFilter($genderFilterValue) { $entityIdCode = Address::COLUMN_ADDRESS_ID; $this->_model->setWriter(\Magento\TestFramework\Helper\Bootstrap::getObjectManager()->create('Magento\\ImportExport\\Model\\Export\\Adapter\\Csv')); $filterData = array('export_filter' => array('gender' => $genderFilterValue)); $this->_model->setParameters($filterData); /** @var $objectManager \Magento\TestFramework\ObjectManager */ $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager(); // Get expected address count /** @var $customers \Magento\Customer\Model\Customer[] */ $customers = $objectManager->get('Magento\\Framework\\Registry')->registry('_fixture/Magento_ImportExport_Customers_Array'); $expectedCount = 0; foreach ($customers as $customer) { if ($customer->getGender() == $genderFilterValue) { $expectedCount += count($customer->getAddresses()); } } $data = $this->_csvToArray($this->_model->export(), $entityIdCode); $this->assertCount($expectedCount, $data['data']); }