/** * @param string $columns * * @Then /^I should see the columns? (.*)$/ */ public function iShouldSeeTheColumns($columns) { $columns = $this->getMainContext()->listToArray($columns); $expectedColumns = count($columns); $countColumns = $this->datagrid->countColumns(); if ($expectedColumns !== $countColumns) { throw $this->createExpectationException(sprintf('Expected %d columns but contains %d', $expectedColumns, $countColumns)); } $expectedPosition = 0; foreach ($columns as $column) { $position = $this->datagrid->getColumnPosition($column); if ($expectedPosition++ !== $position) { throw $this->createExpectationException(sprintf('Column "%s" was expected in position %d, but was at %d', $column, $expectedPosition, $position)); } } }