Add Config\Settings\Import::asArray() method

Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
This commit is contained in:
Maurício Meneghini Fauth 2023-03-01 14:54:28 -03:00
parent 395e46d637
commit 2ef2e44201
No known key found for this signature in database
GPG Key ID: 6A16FD38AFC89CC8
4 changed files with 38 additions and 32 deletions

View File

@ -2612,7 +2612,7 @@ final class Settings
$settings['DBG'] = $this->DBG->asArray();
$settings['SQLQuery'] = get_object_vars($this->SQLQuery);
$settings['Export'] = $this->Export->asArray();
$settings['Import'] = get_object_vars($this->Import);
$settings['Import'] = $this->Import->asArray();
$settings['Schema'] = get_object_vars($this->Schema);
$settings['DefaultTransformations'] = get_object_vars($this->DefaultTransformations);

View File

@ -252,6 +252,40 @@ final class Import
$this->ods_recognize_currency = $this->setOdsRecognizeCurrency($import);
}
/** @return array<string, string|bool|int> */
public function asArray(): array
{
return [
'format' => $this->format,
'charset' => $this->charset,
'allow_interrupt' => $this->allow_interrupt,
'skip_queries' => $this->skip_queries,
'sql_compatibility' => $this->sql_compatibility,
'sql_no_auto_value_on_zero' => $this->sql_no_auto_value_on_zero,
'sql_read_as_multibytes' => $this->sql_read_as_multibytes,
'csv_replace' => $this->csv_replace,
'csv_ignore' => $this->csv_ignore,
'csv_terminated' => $this->csv_terminated,
'csv_enclosed' => $this->csv_enclosed,
'csv_escaped' => $this->csv_escaped,
'csv_new_line' => $this->csv_new_line,
'csv_columns' => $this->csv_columns,
'csv_col_names' => $this->csv_col_names,
'ldi_replace' => $this->ldi_replace,
'ldi_ignore' => $this->ldi_ignore,
'ldi_terminated' => $this->ldi_terminated,
'ldi_enclosed' => $this->ldi_enclosed,
'ldi_escaped' => $this->ldi_escaped,
'ldi_new_line' => $this->ldi_new_line,
'ldi_columns' => $this->ldi_columns,
'ldi_local_option' => $this->ldi_local_option,
'ods_col_names' => $this->ods_col_names,
'ods_empty_rows' => $this->ods_empty_rows,
'ods_recognize_percentages' => $this->ods_recognize_percentages,
'ods_recognize_currency' => $this->ods_recognize_currency,
];
}
/**
* @param array<int|string, mixed> $import
*

View File

@ -861,37 +861,6 @@
<code>$maxRowPlotLimit</code>
</PossiblyUnusedProperty>
</file>
<file src="libraries/classes/Config/Settings/Import.php">
<PossiblyUnusedProperty>
<code>$allow_interrupt</code>
<code>$charset</code>
<code>$csv_col_names</code>
<code>$csv_columns</code>
<code>$csv_enclosed</code>
<code>$csv_escaped</code>
<code>$csv_ignore</code>
<code>$csv_new_line</code>
<code>$csv_replace</code>
<code>$csv_terminated</code>
<code>$format</code>
<code>$ldi_columns</code>
<code>$ldi_enclosed</code>
<code>$ldi_escaped</code>
<code>$ldi_ignore</code>
<code>$ldi_local_option</code>
<code>$ldi_new_line</code>
<code>$ldi_replace</code>
<code>$ldi_terminated</code>
<code>$ods_col_names</code>
<code>$ods_empty_rows</code>
<code>$ods_recognize_currency</code>
<code>$ods_recognize_percentages</code>
<code>$skip_queries</code>
<code>$sql_compatibility</code>
<code>$sql_no_auto_value_on_zero</code>
<code>$sql_read_as_multibytes</code>
</PossiblyUnusedProperty>
</file>
<file src="libraries/classes/Config/Settings/Schema.php">
<PossiblyUnusedProperty>
<code>$dia_orientation</code>

View File

@ -62,9 +62,12 @@ class ImportTest extends TestCase
$expected = array_merge($this->defaultValues, $expectedValues);
$settings = new Import($actualValues);
$importArray = $settings->asArray();
foreach (array_keys($expectedValues) as $key) {
$this->assertSame($expected[$key], $settings->$key);
$this->assertArrayHasKey($key, $importArray);
$this->assertSame($expected[$key], $importArray[$key]);
}
}