View Issue Details

IDProjectCategoryView StatusLast Update
0007893module Amazon PayGeneralpublic2026-06-11 12:26
Reporterkjunker Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Product Version2.2.0 / 3.2.0 
Target Version2.2.1 / 3.2.1Fixed in Version2.2.1 / 3.2.1 
Summary0007893: AmazonPay Modul 2.6.x (b-6.3.x sowie b-7.0.x)
DescriptionWenn man in den yaml Dateien einen Leerstring einträgt, so werden keine Defaultwerte gesetzt.

Beispiel:
      amazonPayCapType:
        type: str
        value: ''

Die entsprechende Validierung des Wertes erfolgt in \OxidSolutionCatalysts\AmazonPay\Controller\Admin\ConfigController::handleSpecialFields
Dort wird als Validierung eine !isset($conf['amazonPayCapType']) ausgeführt.

Diese ist jedoch bei einem Leerstring immer false, da ein Leerstring als gesetzt zählt:
php -r '$conf["foo"] = ""; var_dump(!isset($conf["foo"]));'

Dadurch werden die Daten nicht korrekt gesetzt in der Configuration für AmazonPay.
Additional InformationWir haben uns das Repository für das amazonpay module geforked, aber können anhand der lückenhaften Dokumentation und fehlenden Composer Packages keine Tests ausführen.
Wenn ihr das noch fixed, dann kann man euch direkt eine Lösung vorschlagen. (PS: es gibt keine bootstrap.php im Testorder wie in der phpunit.xml gefordert)

Zusätzlich denkt der Test \OxidSolutionCatalysts\AmazonPay\Tests\Integration\Controller\Admin\ConfigControllerTest nicht alle Variablen die konfiguriert werden ab.
Es gibt auch keinen Unit Test dazu.
TagsNo tags attached.

Activities

QA

2026-02-05 15:02

administrator   ~0018351

QA - ES

QA

2026-02-05 15:06

administrator   ~0018352

QA - ES