Skip to content

Commit d442a9c

Browse files
committed
Added php unit config file and script on composer
1 parent e3fd0ed commit d442a9c

File tree

8 files changed

+52
-17
lines changed

8 files changed

+52
-17
lines changed

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
vendor/
22
.idea/
3-
Main.php
3+
coverage.xml
4+
coverage-html/
5+
.phpunit/

composer.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,8 @@
2525
"psr-4": {
2626
"Nuxtifyts\\PhpDto\\Tests\\": "tests/"
2727
}
28+
},
29+
"scripts": {
30+
"test": "XDEBUG_MODE=coverage vendor/bin/phpunit --configuration phpunit.xml"
2831
}
2932
}

phpunit.xml

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/11.5/phpunit.xsd"
4+
bootstrap="vendor/autoload.php"
5+
colors="true"
6+
stopOnFailure="true"
7+
failOnWarning="true"
8+
failOnDeprecation="true"
9+
cacheDirectory=".phpunit/cache"
10+
displayDetailsOnTestsThatTriggerDeprecations="true"
11+
displayDetailsOnTestsThatTriggerErrors="true"
12+
displayDetailsOnTestsThatTriggerNotices="true"
13+
displayDetailsOnTestsThatTriggerWarnings="true"
14+
displayDetailsOnPhpunitDeprecations="true"
15+
>
16+
17+
<testsuites>
18+
<testsuite name="unit">
19+
<directory>tests/unit</directory>
20+
</testsuite>
21+
</testsuites>
22+
23+
<source>
24+
<include>
25+
<directory>src</directory>
26+
</include>
27+
<exclude>
28+
<directory>tests</directory>
29+
</exclude>
30+
</source>
31+
32+
<coverage>
33+
<report>
34+
<clover outputFile="coverage.xml"/>
35+
<html outputDirectory="coverage-html"/>
36+
</report>
37+
</coverage>
38+
39+
<logging>
40+
41+
</logging>
42+
</phpunit>

tests/Unit/Concerns/BaseDataTest.php

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,9 @@
33
namespace Nuxtifyts\PhpDto\Tests\Unit\Concerns;
44

55
use DateTimeImmutable;
6-
use Nuxtifyts\PhpDto\Concerns\BaseData;
76
use Nuxtifyts\PhpDto\Data;
87
use Nuxtifyts\PhpDto\Exceptions\DeserializeException;
98
use Nuxtifyts\PhpDto\Exceptions\SerializeException;
10-
use Nuxtifyts\PhpDto\Support\Traits\HasSerializers;
119
use Nuxtifyts\PhpDto\Tests\Dummies\AddressData;
1210
use Nuxtifyts\PhpDto\Tests\Dummies\CoordinatesData;
1311
use Nuxtifyts\PhpDto\Tests\Dummies\CountryData;
@@ -29,10 +27,9 @@
2927
use PHPUnit\Framework\Attributes\UsesClass;
3028
use Throwable;
3129

32-
#[CoversClass(BaseData::class)]
30+
#[CoversClass(Data::class)]
3331
#[CoversClass(DeserializeException::class)]
3432
#[CoversClass(SerializeException::class)]
35-
#[CoversClass(HasSerializers::class)]
3633
#[UsesClass(PersonData::class)]
3734
#[UsesClass(UnionTypedData::class)]
3835
#[UsesClass(YesOrNoData::class)]

tests/Unit/Contexts/PropertyContextTest.php

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@
77
use Nuxtifyts\PhpDto\Data;
88
use Nuxtifyts\PhpDto\Enums\Property\Type;
99
use Nuxtifyts\PhpDto\Serializers\ScalarTypeSerializer;
10-
use Nuxtifyts\PhpDto\Support\Traits\HasSerializers;
11-
use Nuxtifyts\PhpDto\Support\Traits\HasTypes;
1210
use Nuxtifyts\PhpDto\Tests\Dummies\Enums\YesNoBackedEnum;
1311
use Nuxtifyts\PhpDto\Tests\Dummies\UnionMultipleTypeData;
1412
use Nuxtifyts\PhpDto\Tests\Dummies\CoordinatesData;
@@ -25,8 +23,6 @@
2523
use Throwable;
2624

2725
#[CoversClass(PropertyContext::class)]
28-
#[CoversClass(HasSerializers::class)]
29-
#[CoversClass(HasTypes::class)]
3026
#[CoversClass(TypeContext::class)]
3127
#[UsesClass(ScalarTypeSerializer::class)]
3228
#[UsesClass(PersonData::class)]

tests/Unit/Serializers/ArraySerializerTest.php

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,10 @@
33
namespace Nuxtifyts\PhpDto\Tests\Unit\Serializers;
44

55
use DateTimeImmutable;
6-
use Nuxtifyts\PhpDto\Concerns\SerializesArrayOfItems;
76
use Nuxtifyts\PhpDto\Contexts\PropertyContext;
87
use Nuxtifyts\PhpDto\Contexts\TypeContext;
98
use Nuxtifyts\PhpDto\Enums\Property\Type;
109
use Nuxtifyts\PhpDto\Serializers\ArraySerializer;
11-
use Nuxtifyts\PhpDto\Support\Traits\HasSerializers;
1210
use Nuxtifyts\PhpDto\Tests\Dummies\ArrayOfMixedAttributesData;
1311
use Nuxtifyts\PhpDto\Tests\Dummies\Enums\YesNoBackedEnum;
1412
use Nuxtifyts\PhpDto\Tests\Dummies\PersonData;
@@ -22,8 +20,7 @@
2220
use Throwable;
2321

2422
#[CoversClass(ArraySerializer::class)]
25-
#[CoversClass(SerializesArrayOfItems::class)]
26-
#[CoversClass(HasSerializers::class)]
23+
#[CoversClass(PropertyContext::class)]
2724
#[CoversClass(TypeContext::class)]
2825
#[UsesClass(ArrayOfAttributesData::class)]
2926
#[UsesClass(ArrayOfMixedAttributesData::class)]

tests/Unit/Serializers/ScalarTypeSerializerTest.php

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
use Nuxtifyts\PhpDto\Tests\Unit\UnitCase;
1212
use Nuxtifyts\PhpDto\Serializers\Serializer;
1313
use Nuxtifyts\PhpDto\Serializers\ScalarTypeSerializer;
14-
use Nuxtifyts\PhpDto\Support\Traits\HasSerializers;
1514
use PHPUnit\Framework\Attributes\CoversClass;
1615
use PHPUnit\Framework\Attributes\DataProvider;
1716
use PHPUnit\Framework\Attributes\Test;
@@ -21,7 +20,6 @@
2120

2221
#[CoversClass(ScalarTypeSerializer::class)]
2322
#[CoversClass(Serializer::class)]
24-
#[CoversClass(HasSerializers::class)]
2523
#[UsesClass(PropertyContext::class)]
2624
#[UsesClass(PersonData::class)]
2725
#[UsesClass(CoordinatesData::class)]

tests/Unit/Support/Traits/HasNormalizersTest.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
namespace Nuxtifyts\PhpDto\Tests\Unit\Support\Traits;
44

5+
use Nuxtifyts\PhpDto\Data;
56
use Nuxtifyts\PhpDto\Normalizers\ArrayAccessNormalizer;
67
use Nuxtifyts\PhpDto\Normalizers\ArrayNormalizer;
78
use Nuxtifyts\PhpDto\Normalizers\JsonStringNormalizer;
@@ -10,13 +11,12 @@
1011
use Nuxtifyts\PhpDto\Tests\Unit\UnitCase;
1112
use Nuxtifyts\PhpDto\Tests\Dummies\Support\HasNormalizersDummy;
1213
use Nuxtifyts\PhpDto\Tests\Dummies\Normalizers\DummyNormalizer;
13-
use Nuxtifyts\PhpDto\Support\Traits\HasNormalizers;
1414
use PHPUnit\Framework\Attributes\CoversClass;
1515
use PHPUnit\Framework\Attributes\Test;
1616
use PHPUnit\Framework\Attributes\UsesClass;
1717
use Nuxtifyts\PhpDto\Tests\Dummies\PersonData;
1818

19-
#[CoversClass(HasNormalizers::class)]
19+
#[CoversClass(Data::class)]
2020
#[UsesClass(HasNormalizersDummy::class)]
2121
#[UsesClass(DoesNotHaveAdditionalNormalizersDummy::class)]
2222
#[UsesClass(DummyNormalizer::class)]

0 commit comments

Comments
 (0)