Skip to content

Commit a0f9d7d

Browse files
SystemKeeperbackportbot[bot]
authored andcommitted
chore: Extend testing of encryptAndSign method
Signed-off-by: Marcel Müller <marcel-mueller@gmx.de>
1 parent b879f96 commit a0f9d7d

1 file changed

Lines changed: 62 additions & 6 deletions

File tree

tests/Unit/PushTest.php

Lines changed: 62 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -434,8 +434,10 @@ public function testPushToDeviceNoFairUse(): void {
434434

435435
public static function dataPushToDeviceSending(): array {
436436
return [
437-
[true],
438-
[false],
437+
[true, 'PKCS1'],
438+
[true, 'OAEP'],
439+
[false, 'PKCS1'],
440+
[false, 'OAEP'],
439441
];
440442
}
441443

@@ -459,38 +461,66 @@ public function testPushToDeviceSending(bool $isDebug): void {
459461
->with('valid')
460462
->willReturn($user);
461463

464+
$devicePublicKey = '-----BEGIN PUBLIC KEY-----
465+
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1SN9sDJGNifnEv/y1UkP
466+
tggJA0xks5b0WN/Ida3GYK4Zy/ZWTa3wAknCerKkZC2rrFbcP55HA/oSp8fuUJC3
467+
q4b59znuhGoQtvvdAwUx6qSIPheAGs/gfMpNWO/bfH02oBu+98eTkxciuNKPxBFk
468+
wRdSSUxsHwkzCOw+er6oxriVSkc7tsNVaXg+ZpzW15cUQugjT6JDDjg5ftSeGsLj
469+
VV70QXge4uD3ege/lsa1N8iUVCjeMJHobyQm/hhGE990b6BzTgOIC1pGsOPbOsZB
470+
/5n54G4EUX9dixSSF90fDJs83GWQ+AIjf/uHmj3vFMe1bnqIwq9P17+IWe5x9Z04
471+
FQIDAQAB
472+
-----END PUBLIC KEY-----';
473+
462474
$push->expects($this->once())
463475
->method('getDevicesForUser')
464476
->willReturn([
465477
[
466478
'proxyserver' => 'proxyserver1',
467479
'token' => 16,
468480
'apptype' => 'other',
481+
'devicepublickey' => $devicePublicKey,
482+
'deviceidentifier' => 'ident16',
483+
'pushtokenhash' => 'hash16',
469484
],
470485
[
471486
'proxyserver' => 'proxyserver1/',
472487
'token' => 23,
473488
'apptype' => 'other',
489+
'devicepublickey' => $devicePublicKey,
490+
'deviceidentifier' => 'ident23',
491+
'pushtokenhash' => 'hash23',
474492
],
475493
[
476494
'proxyserver' => 'badrequest',
477495
'token' => 42,
478496
'apptype' => 'other',
497+
'devicepublickey' => $devicePublicKey,
498+
'deviceidentifier' => 'ident42',
499+
'pushtokenhash' => 'hash42',
479500
],
480501
[
481502
'proxyserver' => 'unavailable',
482503
'token' => 48,
483504
'apptype' => 'other',
505+
'devicepublickey' => $devicePublicKey,
506+
'deviceidentifier' => 'ident48',
507+
'pushtokenhash' => 'hash48',
484508
],
485509
[
486510
'proxyserver' => 'ok',
487511
'token' => 64,
488512
'apptype' => 'other',
513+
'devicepublickey' => $devicePublicKey,
514+
'deviceidentifier' => 'ident64',
515+
'pushtokenhash' => 'hash64',
489516
],
490517
[
491518
'proxyserver' => 'badrequest-with-devices',
492519
'token' => 128,
493520
'apptype' => 'other',
521+
'devicepublickey' => $devicePublicKey,
522+
'deviceidentifier' => 'ident128',
523+
'pushtokenhash' => 'hash128',
494524
],
495525
]);
496526

@@ -519,6 +549,36 @@ public function testPushToDeviceSending(bool $isDebug): void {
519549
/** @var Key&MockObject $key */
520550
$key = $this->createMock(Key::class);
521551

552+
$key->method('getPrivate')
553+
->willReturn('-----BEGIN PRIVATE KEY-----
554+
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCkGi7rj6BWi9U8
555+
lptb1rBKVFENFJjq690Ap8wAdR9cxGYE+nzdFxlcRxh17GwyWaBDEPWtL5WDPxi0
556+
8XjQWpwfYFzjMLLzGMZaj7Jiam5rJM12qFEvYyw9s26LzebeLTzvp28L2TIWCswi
557+
dM0OvrYGGvL9f+N+6Oev5cwiSJk0WrHceL+P/wFH3mmOdOBHmKkofeDZoS1XkNOE
558+
o1EpwepvDibUjc3vHPk1IHg4hsfKk1O9+uHiBf9xqm//M9MKrM9mlOButbo2bOhu
559+
1YN/2wKww7bU/c7JYgVeljpfN0sMuKmhMiuje2KqOU8v8yIREkKMyxd4+B+s3eNG
560+
PdVBf57FAgMBAAECggEAAMegdOm3xPyXMk+f0yNlh5kzDKE1itCL4aYIA6LZnLmp
561+
bHHJWZI4kTT1IHPdgDeYlPBjgAOuEFEsjhLySoXwoF4BIIgErCKD9xa9pBIojmVm
562+
LovlNfFlvScDKgsjUed+5ZguDLcYO7gyQvqTzS6ivXzq6TezeVDfeUgBTg3JG6n/
563+
BjgIek1jV4q9OrQTOdR3eAPwW6pbLG820OB87Cx/A0JHdEgCevFCHmMUbk7yXQrh
564+
W/JwTrnV66LBPjSWQcsHUNWrl2nqV08BYoC1uy32uTpUlejCdWDuHuB1DYOpn0KY
565+
nyiVTNF/MZ0E9sOsKKgbodBz4n3cc6v7NckpFpKMHwKBgQDUeaakKYwatNg6YEHP
566+
OB3iH62bAe7Ej6vg0EPYgr6fzRjAETzTrpZZfzmrGwTxFBczFrx8hOPsyDkpiEU5
567+
77L90jMOb9NSasjS8Pv0GM2LY/8H8Ck4RwXF/E3maSbc2bAY9ZXH6m82YW6iHnfc
568+
G9L0xVCq549axd1tWUnXdukiuwKBgQDFt9KDtlwMutuQOj+Eup7L0sMAxO4jlghH
569+
hTxSAqQ5mlodbQhULXRk4QWGMjjKG0y4XY2rw+VgBQzFT8W3jlThR3BMWKNv3P+M
570+
zlzkoxcoOio7K25im4Yb0NheOnaxaqhLcRwXcxa5E9kn+108xYIYAACZgmkZo7ab
571+
PCoQicnsfwKBgAzyEIYmBeRGqnn8DWZru95gIbq1BnAxdL5w0gFqDeU8oMprAnK/
572+
S2fOiZv0PHvXxoYVV4yaqCxwEpOGOvmJsjUmzneNtqlp2iyIBEHeFP/uKsa4Cjrk
573+
kOR8N97W/0grd0A+Dk8s6HO+wffctV7SzyqcrwqKq0BTl+cmrooTM6crAoGATjjT
574+
iFh1QnQKuZzR1GkgufLAQ2Wl8V5CGEmV+7wfzMpMLKgeS29QRTjhPp5P6WWzjJ02
575+
l2YBMWPOEaHlzyD4Y8gnnYzT3EXKtKJQDgSX/MpGOvKL0WdGP2r4rw7iNn7D5lTx
576+
kDVwH/jCSRchZBGfzm7xzcnSWtpyPCgpXDGnOXECgYEAyqDrBeKlUDDltoe6xs4K
577+
gEG+V5E5cwZqvSoOlYHqbtP9Dms6z6G8TvPZblwlbgwXFofrd5LN/vK3pZPiU5Y+
578+
sd7MhWnjKf7EX9GJD0VhLabFY/KrloJkyL7gOY21xFvmnNqwvH60eOxbVPzlYjaN
579+
96rK6qkqEdUgXj0CpJZHAMw=
580+
-----END PRIVATE KEY-----');
581+
522582
$this->keyManager->expects($this->once())
523583
->method('getKey')
524584
->with($user)
@@ -528,10 +588,6 @@ public function testPushToDeviceSending(bool $isDebug): void {
528588
->method('validateToken')
529589
->willReturn(true);
530590

531-
$push->expects($this->exactly(6))
532-
->method('encryptAndSign')
533-
->willReturn(['Payload']);
534-
535591
$push->expects($this->never())
536592
->method('deletePushToken');
537593

0 commit comments

Comments
 (0)