/** * @param array $parameters * @return CopyAndPayWidget|null */ public function getWidget(array $parameters = []) { if (!$this->haveWidget()) { return null; } $defaultParameters = ['transactionToken' => $this->getTransactionToken()]; if ($this->request) { $defaultParameters['testMode'] = $this->request->getTestMode(); $defaultParameters['returnUrl'] = $this->request->getReturnUrl(); $defaultParameters['brands'] = $this->request->getBrands(); } $parameters = array_replace($defaultParameters, $parameters); $widget = new CopyAndPayWidget($parameters); return $widget; }
public function testSetBrands() { $request = new CopyAndPayPurchaseRequest($this->getHttpClient(), $this->getHttpRequest()); $this->assertNull($request->getBrands()); $request->setBrands(''); $this->assertSame('', $request->getBrands()); $request->setBrands([]); $this->assertSame([], $request->getBrands()); $request->setBrands('VISA'); $this->assertSame('VISA', $request->getBrands()); $request->setBrands(['VISA']); $this->assertSame(['VISA'], $request->getBrands()); $request->setBrands('VISA MASTER'); $this->assertSame('VISA MASTER', $request->getBrands()); $request->setBrands(['VISA', 'MAESTRO', "MASTER"]); $this->assertSame(['VISA', "MAESTRO", 'MASTER'], $request->getBrands()); }