Skip to content

Commit 6d8539d

Browse files
azhilovZhilov Andrey
andauthored
Added isHuawei option to NotificationResolver. (#166)
* Added isHuawei option to NotificationResolver. * Code-style fixes. Co-authored-by: Zhilov Andrey <azhilov@code-pilots.ru>
1 parent 0dddeca commit 6d8539d

File tree

8 files changed

+14
-3
lines changed

8 files changed

+14
-3
lines changed

src/AbstractApi.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
use OneSignal\Exception\InvalidArgumentException;
99
use Psr\Http\Message\RequestInterface;
1010
use Psr\Http\Message\StreamInterface;
11+
1112
use const JSON_THROW_ON_ERROR;
1213

1314
abstract class AbstractApi
@@ -32,6 +33,7 @@ protected function createRequest(string $method, string $uri): RequestInterface
3233

3334
/**
3435
* @param mixed $value
36+
*
3537
* @phpstan-param int<1, max> $maxDepth
3638
*/
3739
protected function createStream($value, int $flags = null, int $maxDepth = 512): StreamInterface

src/Notifications.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
use OneSignal\Resolver\ResolverFactory;
88
use ReflectionMethod;
9+
910
use function count;
1011

1112
class Notifications extends AbstractApi

src/OneSignal.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@
1212
use Psr\Http\Message\RequestFactoryInterface;
1313
use Psr\Http\Message\RequestInterface;
1414
use Psr\Http\Message\StreamFactoryInterface;
15+
1516
use const JSON_THROW_ON_ERROR;
17+
1618
use function gettype;
1719
use function is_array;
1820

src/Resolver/NotificationResolver.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,8 @@ public function resolve(array $data): array
3939
->setAllowedTypes('isIos', 'bool')
4040
->setDefined('isAndroid')
4141
->setAllowedTypes('isAndroid', 'bool')
42+
->setDefined('isHuawei')
43+
->setAllowedTypes('isHuawei', 'bool')
4244
->setDefined('isWP')
4345
->setAllowedTypes('isWP', 'bool')
4446
->setDefined('isWP_WNS')

tests/ConfigTest.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,16 @@ class ConfigTest extends OneSignalTestCase
88
{
99
public function testGetApplicationId(): void
1010
{
11-
self::assertSame('fakeApplicationId', ($this->createConfig())->getApplicationId());
11+
self::assertSame('fakeApplicationId', $this->createConfig()->getApplicationId());
1212
}
1313

1414
public function testGetApplicationAuthKey(): void
1515
{
16-
self::assertSame('fakeApplicationAuthKey', ($this->createConfig())->getApplicationAuthKey());
16+
self::assertSame('fakeApplicationAuthKey', $this->createConfig()->getApplicationAuthKey());
1717
}
1818

1919
public function testGetUserAuthKey(): void
2020
{
21-
self::assertSame('fakeUserAuthKey', ($this->createConfig())->getUserAuthKey());
21+
self::assertSame('fakeUserAuthKey', $this->createConfig()->getUserAuthKey());
2222
}
2323
}

tests/Fixtures/notifications_get_all.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@
6363
"apns_alert": null,
6464
"isAdm": false,
6565
"isAndroid": true,
66+
"isHuawei": false,
6667
"isChrome": false,
6768
"isChromeWeb": true,
6869
"isAlexa": false,

tests/NotificationsTest.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,7 @@ public function testGetAll(): void
139139
'apns_alert' => null,
140140
'isAdm' => false,
141141
'isAndroid' => true,
142+
'isHuawei' => false,
142143
'isChrome' => false,
143144
'isChromeWeb' => true,
144145
'isAlexa' => false,

tests/Resolver/NotificationResolverTest.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ public function testResolveWithValidValues(): void
3535
'subtitle' => ['value'],
3636
'isIos' => false,
3737
'isAndroid' => false,
38+
'isHuawei' => false,
3839
'isWP' => false,
3940
'isWP_WNS' => false,
4041
'isAdm' => false,
@@ -142,6 +143,7 @@ public function wrongValueTypesProvider(): iterable
142143
yield [['subtitle' => 666]];
143144
yield [['isIos' => 666]];
144145
yield [['isAndroid' => 666]];
146+
yield [['isHuawei' => 666]];
145147
yield [['isWP' => 666]];
146148
yield [['isWP_WNS' => 666]];
147149
yield [['isAdm' => 666]];

0 commit comments

Comments
 (0)