MOON
Server: Apache
System: Linux e2e-78-16.ssdcloudindia.net 3.10.0-1160.45.1.el7.x86_64 #1 SMP Wed Oct 13 17:20:51 UTC 2021 x86_64
User: imensosw (1005)
PHP: 7.4.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/imensosw/www/mpl.imenso.co/vendor/brozot/laravel-fcm/tests/GroupResponseTest.php
<?php

use LaravelFCM\Response\GroupResponse;

class GroupResponseTest extends FCMTestCase
{
    /**
     * @test
     */
    public function it_construct_a_response_with_successes()
    {
        $notificationKey = 'notificationKey';

        $response = new \GuzzleHttp\Psr7\Response(200, [], '{
					"success": 2,
					"failure": 0
					}');

        $responseGroup = new GroupResponse($response, $notificationKey);

        $this->assertEquals(2, $responseGroup->numberSuccess());
        $this->assertEquals(0, $responseGroup->numberFailure());
        $this->assertCount(0, $responseGroup->tokensFailed());
    }

    /**
     * @test
     */
    public function it_construct_a_response_with_failures()
    {
        $notificationKey = 'notificationKey';

        $response = new \GuzzleHttp\Psr7\Response(200, [], '{
					"success": 0,
					"failure": 2,
					"failed_registration_ids":[
					   "regId1",
					   "regId2"
					]}');

        $responseGroup = new GroupResponse($response, $notificationKey);

        $this->assertEquals(0, $responseGroup->numberSuccess());
        $this->assertEquals(2, $responseGroup->numberFailure());
        $this->assertCount(2, $responseGroup->tokensFailed());

        $this->assertEquals('regId1', $responseGroup->tokensFailed()[ 0]);
        $this->assertEquals('regId2', $responseGroup->tokensFailed()[ 1]);
    }

    /**
     * @test
     */
    public function it_construct_a_response_with_partials_failures()
    {
        $notificationKey = 'notificationKey';

        $response = new \GuzzleHttp\Psr7\Response(200, [], '{
					"success": 1,
					"failure": 2,
					"failed_registration_ids":[
					   "regId1",
					   "regId2"
					]}');

        $responseGroup = new GroupResponse($response, $notificationKey);

        $this->assertEquals(1, $responseGroup->numberSuccess());
        $this->assertEquals(2, $responseGroup->numberFailure());
        $this->assertCount(2, $responseGroup->tokensFailed());
    }
}