⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.74
Server IP:
13.127.59.50
Server:
Linux ip-172-31-46-210 5.15.0-1033-aws #37~20.04.1-Ubuntu SMP Fri Mar 17 11:39:30 UTC 2023 x86_64
Server Software:
Apache/2.4.41 (Ubuntu)
PHP Version:
7.4.3-4ubuntu2.29
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
home
/
ubuntu
/
vendor
/
sebastian
/
type
/
tests
/
unit
/
View File Name :
IterableTypeTest.php
<?php declare(strict_types=1); /* * This file is part of sebastian/type. * * (c) Sebastian Bergmann <sebastian@phpunit.de> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace SebastianBergmann\Type; use PHPUnit\Framework\TestCase; use SebastianBergmann\Type\TestFixture\Iterator; /** * @covers \SebastianBergmann\Type\IterableType * * @uses \SebastianBergmann\Type\Type * @uses \SebastianBergmann\Type\TypeName * @uses \SebastianBergmann\Type\ObjectType * @uses \SebastianBergmann\Type\SimpleType */ final class IterableTypeTest extends TestCase { /** * @var IterableType */ private $type; protected function setUp(): void { $this->type = new IterableType(false); } public function testMayDisallowNull(): void { $this->assertFalse($this->type->allowsNull()); } public function testCanGenerateReturnTypeDeclaration(): void { $this->assertEquals(': iterable', $this->type->getReturnTypeDeclaration()); } public function testMayAllowNull(): void { $type = new IterableType(true); $this->assertTrue($type->allowsNull()); } public function testCanGenerateNullableReturnTypeDeclaration(): void { $type = new IterableType(true); $this->assertEquals(': ?iterable', $type->getReturnTypeDeclaration()); } public function testNullCanBeAssignedToNullableIterable(): void { $type = new IterableType(true); $this->assertTrue($type->isAssignable(new NullType)); } public function testIterableCanBeAssignedToIterable(): void { $this->assertTrue($this->type->isAssignable(new IterableType(false))); } public function testArrayCanBeAssignedToIterable(): void { $this->assertTrue( $this->type->isAssignable( Type::fromValue([], false) ) ); } public function testIteratorCanBeAssignedToIterable(): void { $this->assertTrue( $this->type->isAssignable( Type::fromValue(new Iterator, false) ) ); } public function testSomethingThatIsNotIterableCannotBeAssignedToIterable(): void { $this->assertFalse( $this->type->isAssignable( Type::fromValue(null, false) ) ); } }