@Then I should see given units:

@param TableNode $table
@throws Exception
355275
public function iShouldSeeGivenUnits(TableNode $table)
    {
        foreach ($table as $row) {
            $found = array_filter(
                $this->unitsList,
                function (UnitListItem $unitListItem) use ($row) {
                    return $unitListItem->name == $row['name'] && $unitListItem->shortcut == $row['shortcut'];
                }
            );

            if (!$found) {
                throw new \Exception(sprintf('Unit %s is not found', $row['name']));
            }
        }
    }
737986
public function setRequestFormParams(TableNode $table) {
        if (!isset($this->requestOptions['form_params'])) {
            $this->requestOptions['form_params'] = [];
        }

        foreach ($table as $row) {
            $name = $row['name'];
            $value = $row['value'];

            if (isset($this->requestOptions['form_params'][$name]) && !is_array($this->requestOptions['form_params'][$name])) {
                $this->requestOptions['form_params'][$name] = [$this->requestOptions['form_params'][$name]];
            }

            if (isset($this->requestOptions['form_params'][$name])) {
                $this->requestOptions['form_params'][$name][] = $value;
            } else {
                $this->requestOptions['form_params'][$name] = $value;
            }
        }

        return $this;
    }
1125992
public function initialize(Table $table)
    {
        $this->table = $table;

        if (!$this->builder instanceof ActionBuilder) {
            $this->builder = new ActionBuilder($this->table);
        }
    }
846820
public function setHeaders(TableNode $headers)
    {
        foreach ($headers->getRowsHash() as $name => $value) {
            $this->setHeader($name, $value);
        }
    }
471727
protected function sortTable(TableNode $table)
    {
        $raw_table = $table->getTable();
        sort($raw_table);
        return new TableNode($raw_table);
    }
313860
public function iParseAndProcess($template, TableNode $table)
    {
        $data = [];

        foreach ($table->getRows() as $row) {
            $data[$row[0]] = $row[1];
        }

        $this->result = $this->template->parse($template)->process($data);
    }
1349559
private function createColumns(Table $table)
    {
        $table->addColumn(RdsDeliveryExecutionService::COLUMN_ID, Type::STRING, ["length" => 255, "notnull" => true]);
        $table->addColumn(RdsDeliveryExecutionService::COLUMN_DELIVERY_ID, Type::STRING, ["length" => 255, "notnull" => true]);
        $table->addColumn(RdsDeliveryExecutionService::COLUMN_USER_ID, Type::STRING, ["length" => 255, "notnull" => true]);
        $table->addColumn(RdsDeliveryExecutionService::COLUMN_LABEL, Type::STRING, ["length" => 255, "notnull" => true]);
        $table->addColumn(RdsDeliveryExecutionService::COLUMN_STATUS, Type::STRING, ["length" => 255, "notnull" => true]);
        $table->addColumn(RdsDeliveryExecutionService::COLUMN_STARTED_AT, Type::DATETIME, ["notnull" => true]);
        $table->addColumn(RdsDeliveryExecutionService::COLUMN_FINISHED_AT, Type::DATETIME, ["notnull" => false]);
        $table->setPrimaryKey([RdsDeliveryExecutionService::COLUMN_ID]);
    }
1015151
public function buildSpecificDefinition(TableStructure $table): void
    {
        parent::buildSpecificDefinition($table);

        if ($table->generalSchema) {
            $this->definition[] = 'unsigned()';
            $this->isUnsignedPossible = false;
        }
    }
156094
public function check(Table $table)
    {
        $columns = $table->getColumns();
        $filters = $table->getFilters();
        $successfulFilters = [];
        foreach ($filters as $id => $filterData) {
            $successfulNames = [];
            foreach ($filterData as $name => $value) {
                $test = $this->checkFilter($name, $columns[$id]['type'], $value, null);
                if ($test !== null)
                    $successfulNames[$name] = $value;
            }
            if (count($successfulNames) > 0)
                $successfulFilters[$id] = $successfulNames;
        }
        $table->setFilters($successfulFilters);
    }
745314
public function getSchema($table, $property = null)
    {
        if (false === array_key_exists($table, $this->schemas)) {
            $class = $this->configuration['namespace'] . "\\" . CamelCase::to($table);

            if (false === class_exists($class)) {
                throw new Exception(sprintf('entity not found "%s"', $class));
            }

            $this->schemas[$table] = call_user_func($class . '::schema');
            $this->schemas[$table]['class'] = $class;
            $this->schemas[$table]['table'] = $table;
        }

        return $property === null ? $this->schemas[$table] : $this->schemas[$table][$property];
    }
888377
protected function unit(&$unit)
    {
        if ($this->match('([0-9]*(\.)?[0-9]+)([%a-zA-Z]+)?', $m)) {
            $unit = new Node\Number($m[1], empty($m[3]) ? '' : $m[3]);

            return true;
        }

        return false;
    }
746051
protected function checkTable($table)
    {
        try {
            $this->Table = $this->loadModel($table);
        } catch (Exception $e) {
            $this->out(__('<error>' . $e->getMessage() . '</error>'));
            $this->_stop();
        }

        if (get_class($this->Table) === 'AppModel') {
            $this->out(__('<error>The table could not be found, instance of AppModel loaded.</error>'));
            $this->_stop();
        }

        if (!$this->Table->hasBehavior('Proffer')) {
            $out = __(
                "<error>The table '" . $this->Table->alias() .
                "' does not have the Proffer behavior attached.</error>"
            );
            $this->out($out);
            $this->_stop();
        }

        $config = $this->Table->behaviors()->Proffer->config();
        foreach ($config as $field => $settings) {
            if (!$this->Table->hasField($field)) {
                $out = __(
                    "<error>The table '" . $this->Table->alias() .
                    "' does not have the configured upload field in it's schema.</error>"
                );
                $this->out($out);
                $this->_stop();
            }
            if (!$this->Table->hasField($settings['dir'])) {
                $out = __(
                    "<error>The table '" . $this->Table->alias() .
                    "' does not have the configured dir field in it's schema.</error>"
                );
                $this->out($out);
                $this->_stop();
            }
        }

        if ($this->param('remove-behaviors')) {
            $removeBehaviors = explode(',', (string)$this->param('remove-behaviors'));
            foreach ($removeBehaviors as $removeBehavior) {
                $this->Table->removeBehavior($removeBehavior);
            }
        }
    }
972762
public function convertTableNodeToQueries(TableNode $node)
    {
        // Get the title row.
        $columns = $node->getRow(0);

        // Get all rows and extract the heading.
        $rows = $node->getRows();
        unset($rows[0]);

        if (! $rows) {
            throw new \Exception('No data provided to loop through.');
        }

        $queries = [];

        // Loop through the rest of the rows and form up the queries.
        foreach ($rows as $row) {
            $query = '';
            foreach ($row as $index => $value) {
                $query .= sprintf('%s:%s,', $columns[$index], $value);
            }
            $queries[] = trim($query, ',');
        }

        return $queries;
    }
913832
public function set_units( $units = [] ) {
		$this->data['units'] = Strings::maybe_split_parameters( $units );
		$this->custom_units  = $this->update_unit_pattern( $this->data['units'] );
	}
449111
public function initialize(Table $table)
    {
        $this->table = $table;
        $this->table->setData($this->getData());
    }
196818
function register_node_class( $s, $class ){
		if( ! class_exists($class) ){
			$s = $this->token_name( $s );
			throw new Exception( "If you want to register class `$class' for symbol `$s' you should include it first" );
		}
		$this->node_classes[$s] = $class;
	}
51171
protected function skipMonitoringOfTable($table)
    {
        static $configurationMonitorTables;

        if (empty($configurationMonitorTables)) {
            $configuration = GeneralUtility::makeInstance(ExtensionConfiguration::class);
            $configurationMonitorTables = $configuration->getIsUseConfigurationMonitorTables();
        }

        // No explicit configuration => all tables should be monitored
        if (empty($configurationMonitorTables)) {
            return false;
        }

        return !in_array($table, $configurationMonitorTables);
    }