OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
firebase
/
vendor
/
google
/
gax
/
tests
/
Tests
/
Unit
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
08/12/2024 10:35:16 AM
rwxr-xr-x
📄
AgentHeaderTest.php
5.89 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
ApiExceptionTest.php
22.46 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
ApiStatusTest.php
5.41 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
ArrayTraitTest.php
5.71 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
BidiStreamTest.php
11.36 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
ClientOptionsTraitTest.php
20.93 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
ClientStreamTest.php
6.04 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
CredentialsWrapperTest.php
24.32 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
FixedSizeCollectionTest.php
7.5 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
GapicClientTraitTest.php
62.45 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
GeneratedTestTest.php
4.5 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
GrpcSupportTraitTest.php
1.49 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
InsecureCredentialsWrapperTest.php
3.1 KB
08/12/2024 10:35:16 AM
rw-r--r--
📁
Middleware
-
08/12/2024 10:36:19 AM
rwxr-xr-x
📄
MyMessage.php
743 bytes
08/12/2024 10:35:16 AM
rw-r--r--
📄
OperationResponseTest.php
16.37 KB
08/12/2024 10:35:16 AM
rw-r--r--
📁
Options
-
08/12/2024 10:36:19 AM
rwxr-xr-x
📄
PageStreamingDescriptorTest.php
2.16 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
PageTest.php
5.44 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
PagedListResponseTest.php
5.69 KB
08/12/2024 10:35:16 AM
rw-r--r--
📄
PathTemplateTest.php
9.19 KB
08/12/2024 10:35:17 AM
rw-r--r--
📄
ProtobufBandaidTest.php
1.15 KB
08/12/2024 10:35:17 AM
rw-r--r--
📄
ProtobufExtensionTest.php
2.17 KB
08/12/2024 10:35:17 AM
rw-r--r--
📄
RequestBuilderTest.php
17.19 KB
08/12/2024 10:35:17 AM
rw-r--r--
📄
RequestParamsHeaderDescriptorTest.php
3.28 KB
08/12/2024 10:35:17 AM
rw-r--r--
📄
ResourceHelperTraitTest.php
4.01 KB
08/12/2024 10:35:17 AM
rw-r--r--
📁
ResourceTemplate
-
08/12/2024 10:36:19 AM
rwxr-xr-x
📄
RetrySettingsTest.php
14.3 KB
08/12/2024 10:35:17 AM
rw-r--r--
📄
SerializerTest.php
10.21 KB
08/12/2024 10:35:17 AM
rw-r--r--
📄
ServerStreamTest.php
7.4 KB
08/12/2024 10:35:17 AM
rw-r--r--
📄
ServiceAddressTraitTest.php
2.2 KB
08/12/2024 10:35:17 AM
rw-r--r--
📄
TestTrait.php
4.72 KB
08/12/2024 10:35:17 AM
rw-r--r--
📁
Transport
-
08/12/2024 10:36:38 AM
rwxr-xr-x
📄
UriTraitTest.php
2.45 KB
08/12/2024 10:35:17 AM
rw-r--r--
📄
ValidationTraitTest.php
2.17 KB
08/12/2024 10:35:17 AM
rw-r--r--
📄
VersionTest.php
1.89 KB
08/12/2024 10:35:17 AM
rw-r--r--
📁
testdata
-
08/12/2024 10:36:45 AM
rwxr-xr-x
Editing: ArrayTraitTest.php
Close
<?php /* * Copyright 2017 Google LLC * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are * met: * * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above * copyright notice, this list of conditions and the following disclaimer * in the documentation and/or other materials provided with the * distribution. * * Neither the name of Google Inc. nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ namespace Google\ApiCore\Tests\Unit; use Google\ApiCore\ArrayTrait; use InvalidArgumentException; use PHPUnit\Framework\TestCase; class ArrayTraitTest extends TestCase { private $implementation; public function setUp(): void { $this->implementation = new ArrayTraitStub(); } public function testPluck() { $value = '123'; $key = 'key'; $array = [$key => $value]; $actualValue = $this->implementation->pluck($key, $array); $this->assertEquals($value, $actualValue); $this->assertEquals([], $array); } public function testPluckThrowsExceptionWithInvalidKey() { $array = []; $this->expectException(InvalidArgumentException::class); $this->implementation->pluck('not_here', $array); } public function testPluckArray() { $keys = ['key1', 'key2']; $array = [ 'key1' => 'test', 'key2' => 'test' ]; $expectedArray = $array; $actualValues = $this->implementation->pluckArray($keys, $array); $this->assertEquals($expectedArray, $actualValues); $this->assertEquals([], $array); } public function testIsAssocTrue() { $actual = $this->implementation->isAssoc([ 'test' => 1, 'test' => 2 ]); $this->assertTrue($actual); } public function testIsAssocFalse() { $actual = $this->implementation->isAssoc([1, 2, 3]); $this->assertFalse($actual); } public function testArrayFilterRemoveNull() { $input = [ 'null' => null, 'false' => false, 'zero' => 0, 'float' => 0.0, 'empty' => '', 'array' => [], ]; $res = $this->implementation->arrayFilterRemoveNull($input); $this->assertFalse(array_key_exists('null', $res)); $this->assertTrue(array_key_exists('false', $res)); $this->assertTrue(array_key_exists('zero', $res)); $this->assertTrue(array_key_exists('float', $res)); $this->assertTrue(array_key_exists('empty', $res)); $this->assertTrue(array_key_exists('array', $res)); } /** * @dataProvider subsetArrayData */ public function testSubsetArray($keys, $array, $expectedSubset) { $actualSubset = $this->implementation->subsetArray($keys, $array); $this->assertSame($expectedSubset, $actualSubset); } public function subsetArrayData() { return [ [ ['one', 2], [ 'one' => 'value-of-one', 2 => 'value-of-two', 'three' => 'value-of-three' ], [ 'one' => 'value-of-one', 2 => 'value-of-two', ], ], [ ['one', 2, 'four'], [ 'one' => 'value-of-one', 2 => 'value-of-two', 'three' => 'value-of-three' ], [ 'one' => 'value-of-one', 2 => 'value-of-two', ], ] ]; } public function testArrayMergeRecursive() { $array1 = [ 'a' => [ 'b' => 'c' ], 'e' => 'f' ]; $array2 = [ 'a' => [ 'b' => 'd' ], 'g' => 'h' ]; $expected = [ 'a' => [ 'b' => 'd' ], 'e' => 'f', 'g' => 'h' ]; $res = $this->implementation->arrayMergeRecursive($array1, $array2); $this->assertEquals($expected, $res); } } class ArrayTraitStub { use ArrayTrait { arrayFilterRemoveNull as public; isAssoc as public; pluck as public; pluckArray as public; subsetArray as public; arrayMergeRecursive as public; } }