Upload
This commit is contained in:
commit
4a17f31e55
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
/vendor/
|
||||
composer.lock
|
||||
.phpunit.cache
|
25
.php-cs-fixer.php
Normal file
25
.php-cs-fixer.php
Normal file
|
@ -0,0 +1,25 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
$config = new PhpCsFixer\Config();
|
||||
|
||||
return $config
|
||||
->setRiskyAllowed(true)
|
||||
->setRules([
|
||||
'@PSR12' => true,
|
||||
'@Symfony' => true,
|
||||
'assign_null_coalescing_to_coalesce_equal' => true,
|
||||
'combine_consecutive_issets' => true,
|
||||
'combine_consecutive_unsets' => true,
|
||||
'declare_strict_types' => true,
|
||||
'nullable_type_declaration' => true,
|
||||
'phpdoc_var_annotation_correct_order' => true,
|
||||
'single_line_empty_body' => true,
|
||||
'ternary_to_null_coalescing' => true,
|
||||
])
|
||||
->setFinder(PhpCsFixer\Finder::create()
|
||||
// ->exclude('folder-to-exclude') // if you want to exclude some folders, you can do it like this!
|
||||
->in(__DIR__.'/src')
|
||||
->in(__DIR__.'/tests')
|
||||
);
|
14
Makefile
Normal file
14
Makefile
Normal file
|
@ -0,0 +1,14 @@
|
|||
code-style-fix:
|
||||
@composer code-style-fix
|
||||
|
||||
code-style-check:
|
||||
@composer code-style-check
|
||||
|
||||
analyze-code:
|
||||
@composer analyze-code
|
||||
|
||||
run-unit-tests:
|
||||
@composer run-unit-tests
|
||||
|
||||
full-test:
|
||||
@composer full-test
|
50
composer.json
Normal file
50
composer.json
Normal file
|
@ -0,0 +1,50 @@
|
|||
{
|
||||
"name": "chicory/package-template",
|
||||
"description": "Composer package template",
|
||||
"type": "library",
|
||||
"license": "MIT",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Chicory\\PackageTemplate\\": "src/"
|
||||
}
|
||||
},
|
||||
"autoload-dev": {
|
||||
"psr-4": {
|
||||
"Chicory\\Tests\\PackageTemplate\\": "tests/"
|
||||
}
|
||||
},
|
||||
"authors": [
|
||||
{
|
||||
"name": "Chicory",
|
||||
"email": "chicory@fossee.net"
|
||||
}
|
||||
],
|
||||
"minimum-stability": "stable",
|
||||
"require": {
|
||||
"php": "8.*"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "11.*",
|
||||
"phpstan/phpstan": "1.*",
|
||||
"friendsofphp/php-cs-fixer": "^3.60"
|
||||
},
|
||||
"scripts": {
|
||||
"code-style-check": [
|
||||
"./vendor/bin/php-cs-fixer fix --dry-run --stop-on-violation --using-cache=no"
|
||||
],
|
||||
"code-style-fix": [
|
||||
"./vendor/bin/php-cs-fixer fix -v --using-cache=no"
|
||||
],
|
||||
"analyze-code": [
|
||||
"./vendor/bin/phpstan"
|
||||
],
|
||||
"run-unit-tests": [
|
||||
"./vendor/bin/phpunit"
|
||||
],
|
||||
"full-test": [
|
||||
"@code-style-check",
|
||||
"@analyze-code",
|
||||
"@run-unit-tests"
|
||||
]
|
||||
}
|
||||
}
|
5
phpstan.neon
Normal file
5
phpstan.neon
Normal file
|
@ -0,0 +1,5 @@
|
|||
parameters:
|
||||
level: max
|
||||
paths:
|
||||
- src
|
||||
- tests
|
23
phpunit.xml
Normal file
23
phpunit.xml
Normal file
|
@ -0,0 +1,23 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/11.2/phpunit.xsd"
|
||||
bootstrap="vendor/autoload.php"
|
||||
cacheDirectory=".phpunit.cache"
|
||||
executionOrder="depends,defects"
|
||||
requireCoverageMetadata="true"
|
||||
beStrictAboutCoverageMetadata="true"
|
||||
beStrictAboutOutputDuringTests="true"
|
||||
failOnRisky="true"
|
||||
failOnWarning="true">
|
||||
<testsuites>
|
||||
<testsuite name="default">
|
||||
<directory>tests</directory>
|
||||
</testsuite>
|
||||
</testsuites>
|
||||
|
||||
<source ignoreIndirectDeprecations="true" restrictNotices="true" restrictWarnings="true">
|
||||
<include>
|
||||
<directory>src</directory>
|
||||
</include>
|
||||
</source>
|
||||
</phpunit>
|
13
src/ExampleClass.php
Normal file
13
src/ExampleClass.php
Normal file
|
@ -0,0 +1,13 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Chicory\PackageTemplate;
|
||||
|
||||
class ExampleClass
|
||||
{
|
||||
public function sayHello(): string
|
||||
{
|
||||
return 'Hello';
|
||||
}
|
||||
}
|
27
tests/ExampleClassTest.php
Normal file
27
tests/ExampleClassTest.php
Normal file
|
@ -0,0 +1,27 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Chicory\Tests\PackageTemplate;
|
||||
|
||||
use Chicory\PackageTemplate\ExampleClass;
|
||||
use PHPUnit\Framework\Attributes\CoversClass;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
#[CoversClass(ExampleClass::class)]
|
||||
class ExampleClassTest extends TestCase
|
||||
{
|
||||
public ExampleClass $exampleClass;
|
||||
|
||||
protected function setUp(): void
|
||||
{
|
||||
$this->exampleClass = new ExampleClass();
|
||||
|
||||
parent::setUp();
|
||||
}
|
||||
|
||||
public function testExampleClass(): void
|
||||
{
|
||||
$this->assertEquals('Hello', $this->exampleClass->sayHello());
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user