Skip to content

Commit cfa3a3c

Browse files
committed
Use string conversion when processing request fields to handle French strings
1 parent 335b794 commit cfa3a3c

File tree

4 files changed

+11
-6
lines changed

4 files changed

+11
-6
lines changed

composer.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44
"require": {
55
"laravel/framework": "5.*",
66
"guzzlehttp/guzzle": "^6.2",
7-
"ext-openssl": "*"
7+
"ext-openssl": "*",
8+
"ext-iconv": "*"
89
},
910
"autoload": {
1011
"psr-4": {

composer.lock

Lines changed: 4 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Responses/Capture.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ protected function setFields()
9494

9595
array_walk($fields, function (&$item, &$key) {
9696
list($key, $item) = explode('=', $item);
97-
$this->fields[$key] = $item;
97+
$this->fields[$key] = iconv('ISO-8859-1', 'UTF-8', $item);
9898
});
9999
}
100100
}

tests/Responses/CaptureTest.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@ class CaptureTest extends UnitTestCase
1212
/** @test */
1313
public function getFields_it_gets_valid_fields()
1414
{
15-
$responseBody = 'foo=bar&a=b&c=d';
15+
$frenchMessage = 'Transaction non trouvé';
16+
17+
$responseBody = 'foo=bar&a=b&c=d&message=' . iconv('UTF-8', 'ISO-8859-1', $frenchMessage);
1618

1719
$response = m::mock(Capture::class, [$responseBody])->makePartial();
1820

@@ -21,6 +23,7 @@ public function getFields_it_gets_valid_fields()
2123
'foo' => 'bar',
2224
'a' => 'b',
2325
'c' => 'd',
26+
'message' => $frenchMessage,
2427
], $fields);
2528
}
2629

0 commit comments

Comments
 (0)