-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Dominik Bähr
committed
Sep 27, 2023
1 parent
d40211a
commit d2e2029
Showing
19 changed files
with
812 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
name: Continuous Integration | ||
|
||
on: [push] | ||
|
||
jobs: | ||
analyse: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v2 | ||
|
||
- name: Set up PHP environment | ||
uses: shivammathur/setup-php@v2 | ||
with: | ||
php-version: '8.1' | ||
|
||
- name: Validate composer.json | ||
run: composer validate | ||
|
||
- name: Install dependencies | ||
run: composer install | ||
|
||
- name: Run tests | ||
run: composer test | ||
|
||
- name: Check coding standards | ||
run: composer cs-check | ||
|
||
- name: Check static analysis (PHPStan) | ||
run: composer stan | ||
|
||
- name: Check messdetector | ||
run: composer md-check |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
# IDE | ||
.idea/ | ||
.project/ | ||
nbproject/ | ||
.buildpath/ | ||
.settings/ | ||
*.sublime-* | ||
src/Generated/* | ||
src/Orm/* | ||
|
||
# OS | ||
.DS_Store | ||
*.AppleDouble | ||
*.AppleDB | ||
*.AppleDesktop | ||
|
||
# grunt stuff | ||
.grunt | ||
.sass-cache | ||
/node_modules/ | ||
|
||
# tooling | ||
vendor/ | ||
composer.lock | ||
auth.json | ||
.phpunit.result.cache | ||
|
||
# built client resources | ||
src/*/Zed/*/Static/Public | ||
src/*/Zed/*/Static/Assets/sprite | ||
|
||
# Propel classes | ||
src/*/Zed/*/Persistence/Propel/Base/* | ||
src/*/Zed/*/Persistence/Propel/Map/* | ||
|
||
# tests | ||
tests/**/_generated/ | ||
tests/_output/* | ||
!tests/_output/.gitkeep | ||
tests/app/* | ||
src/Orm | ||
src/Generated |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,13 @@ | ||
# navigation-generator | ||
# Navigation Generator | ||
|
||
## Description: | ||
Adds new console command to spryker, which uses the imported category data to generate a navigation_node.csv based on the category-tree. | ||
|
||
## Usage: | ||
``` | ||
vendor/bin/console data:generate:navigation-node | ||
``` | ||
### Configuration: | ||
* `NavigationGeneratorConstants::OUTPUT_PATH` (Default: `APPLICATION_ROOT_DIR . '/data/import/common/common/navigation_node.csv'`) | ||
* `NavigationGeneratorConstants::FALLBACK_LOCALE` (Default: `de_DE`, is used when for a configured locale no category data is available) | ||
* `NavigationGeneratorConstants::NAVIGATION_KEY` (Default: `MAIN_NAVIGATION`) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
namespace: ValanticSpryker | ||
|
||
suites: | ||
unit: | ||
path: . | ||
|
||
settings: | ||
shuffle: true | ||
lint: true | ||
|
||
bootstrap: _bootstrap.php | ||
|
||
paths: | ||
tests: tests | ||
output: tests/_output | ||
support: tests/_support | ||
data: tests/_data | ||
|
||
coverage: | ||
enabled: true | ||
include: | ||
- src/ValanticSpryker/*.php | ||
|
||
modules: | ||
enabled: | ||
- \FondOfCodeception\Module\Spryker | ||
config: | ||
\FondOfCodeception\Module\Spryker: | ||
generate_transfer: false | ||
generate_map_classes: false | ||
generate_propel_classes: false | ||
|
||
env: | ||
standalone: | ||
modules: | ||
config: | ||
\FondOfCodeception\Module\Spryker: | ||
generate_transfer: true | ||
generate_map_classes: true | ||
generate_propel_classes: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
{ | ||
"name": "valantic-spryker/navigation-generator", | ||
"type": "library", | ||
"description": "Generates navigation-node.csv based on imported category data", | ||
"require": { | ||
"php": ">=8.0", | ||
"spryker/kernel": "^3.0.0", | ||
"spryker/store": "^1.0.0", | ||
"spryker/category": "^5.0.0", | ||
"spryker/category-storage": "^2.1.1" | ||
}, | ||
"autoload": { | ||
"psr-4": { | ||
"ValanticSpryker\\": "src/ValanticSpryker/" | ||
} | ||
}, | ||
"autoload-dev": { | ||
"psr-4": { | ||
"ValanticSprykerTest\\": "tests/ValanticSprykerTest/", | ||
"Generated\\": "src/Generated/", | ||
"Orm\\Zed\\": "src/Orm/Zed/" | ||
} | ||
}, | ||
"minimum-stability": "dev", | ||
"prefer-stable": true, | ||
"config": { | ||
"platform": { | ||
"php": "8.0.19" | ||
}, | ||
"preferred-install": "dist", | ||
"use-include-path": true, | ||
"sort-packages": true, | ||
"github-protocols": [ | ||
"https" | ||
], | ||
"process-timeout": 900, | ||
"chromium-revision": 814168, | ||
"allow-plugins": { | ||
"dealerdirect/phpcodesniffer-composer-installer": true | ||
} | ||
}, | ||
"authors": [ | ||
{ | ||
"name": "Valantic", | ||
"homepage": "https://www.valantic.com" | ||
} | ||
], | ||
"keywords": [ | ||
"spryker" | ||
], | ||
"include-path": [ | ||
"src/" | ||
], | ||
"require-dev": { | ||
"fond-of-codeception/spryker": "^1.0 || ^2.0", | ||
"spryker-sdk/phpstan-spryker": "*", | ||
"spryker/architecture-sniffer": "*", | ||
"spryker/code-sniffer": "*", | ||
"spryker/development": "*", | ||
"spryker/testify": "*" | ||
}, | ||
"scripts": { | ||
"cs-fix": "phpcbf --standard=phpcs.xml src", | ||
"cs-check": "phpcs -s --standard=phpcs.xml --report=full src", | ||
"md-check": "phpmd src/ text phpmd-ruleset.xml --minimumpriority 2", | ||
"stan": "php -d memory_limit=3072M vendor/bin/phpstan analyze -l 4 src/ValanticSpryker/", | ||
"test": "codecept run --env standalone --coverage-text --no-colors --coverage-html" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
<?xml version="1.0"?> | ||
<ruleset name="SprykerProject"> | ||
<description> | ||
Spryker Coding Standard for Project. | ||
|
||
Extends main Spryker Coding Standard. | ||
All sniffs in ./Sniffs will be auto loaded | ||
</description> | ||
|
||
<rule ref="./vendor/spryker/code-sniffer/Spryker/ruleset.xml"> | ||
<exclude name="Spryker.Commenting.FileDocBlock"/> | ||
<exclude name="Spryker.Formatting.MethodSignatureParametersLineBreakMethod"/> | ||
<exclude name="Spryker.PHP.SingleQuote"/> | ||
<exclude name="Spryker.Classes.ReturnTypeHint"/> | ||
<exclude name="Generic.Files.LineLength.TooLong"/> | ||
<exclude name="SlevomatCodingStandard.ControlStructures.DisallowNullSafeObjectOperator"/> | ||
<exclude name="SlevomatCodingStandard.Classes.DisallowConstructorPropertyPromotion"/> | ||
<exclude name="SlevomatCodingStandard.Functions.DisallowNamedArguments"/> | ||
</rule> | ||
|
||
<rule ref="./vendor/spryker/code-sniffer/SprykerStrict/ruleset.xml"> | ||
<exclude name="SprykerStrict.TypeHints.ParameterTypeHint"/> | ||
<exclude name="SprykerStrict.TypeHints.PropertyTypeHint"/> | ||
<exclude name="Spryker.Commenting.FileDocBlock"/> | ||
<exclude name="SlevomatCodingStandard.Classes.ConstantSpacing"/> | ||
<exclude name="Spryker.Commenting.DocBlockConst"/> | ||
</rule> | ||
|
||
<exclude-pattern>*/src/Generated/*</exclude-pattern> | ||
<exclude-pattern>*/src/Orm/*</exclude-pattern> | ||
<exclude-pattern>*/tests/_support/_generated/*</exclude-pattern> | ||
<exclude-pattern>*/tests/*/_support/_generated/*</exclude-pattern> | ||
<exclude-pattern>*/tests/*/_support/*Tester.php</exclude-pattern> | ||
<exclude-pattern>*/tests/_helpers/*</exclude-pattern> | ||
<exclude-pattern>*/tests/_output/*</exclude-pattern> | ||
<exclude-pattern>./data/DE/*</exclude-pattern> | ||
<exclude-pattern>./data/AT/*</exclude-pattern> | ||
<exclude-pattern>./data/SH/*</exclude-pattern> | ||
<exclude-pattern>./data/PZ/*</exclude-pattern> | ||
<exclude-pattern>./data/US/*</exclude-pattern> | ||
<exclude-pattern>./public</exclude-pattern> | ||
<exclude-pattern>*/node_modules/*</exclude-pattern> | ||
<exclude-pattern>*/vendor/*</exclude-pattern> | ||
|
||
<!-- Define your own sniffs here --> | ||
|
||
<rule ref="Spryker.Internal.SprykerDisallowFunctions"> | ||
<properties> | ||
<!-- We want to prevent 8.0+ functions to break 7.4 compatibility --> | ||
<property name="phpVersion" value="8.0"/> | ||
</properties> | ||
</rule> | ||
<!-- specific sniffs to include --> | ||
<rule ref="./vendor/slevomat/coding-standard/SlevomatCodingStandard/Sniffs/TypeHints/DeclareStrictTypesSniff.php" /> | ||
|
||
</ruleset> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
<?xml version="1.0"?> | ||
<ruleset name="Spryker PHPMD Rule Set" | ||
xmlns="http://pmd.sf.net/ruleset/1.0.0" | ||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd" | ||
xsi:noNamespaceSchemaLocation="http://pmd.sf.net/ruleset_xml_schema.xsd"> | ||
<description> | ||
Extends Spryker's PHP Mess Detector Rule Set | ||
</description> | ||
|
||
<exclude-pattern>tests/_data</exclude-pattern> | ||
<exclude-pattern>tests/_output</exclude-pattern> | ||
<exclude-pattern>tests/_support</exclude-pattern> | ||
<exclude-pattern>*/Persistence/Base/*</exclude-pattern> | ||
<exclude-pattern>*/Persistence/Map/*</exclude-pattern> | ||
<exclude-pattern>*/Orm/Propel/*</exclude-pattern> | ||
<exclude-pattern>*/Generated/*</exclude-pattern> | ||
<exclude-pattern>*Zed/DataImport/*</exclude-pattern> | ||
|
||
<rule ref="./vendor/spryker/development/resources/phpmd/ruleset.xml"> | ||
<exclude name="LongClassName"/> | ||
</rule> | ||
|
||
<rule ref="./vendor/spryker/architecture-sniffer/src/ruleset.xml"> | ||
<exclude name="NewPluginExtensionModuleRule"/> | ||
<exclude name="PluginSuffixRule"/> | ||
<exclude name="FactoryPropelQueryMethodNameRule"/> | ||
<exclude name="ImplementsApiInheritDocRule"/> | ||
<exclude name="FactoryMethodReturnInterfaceRule"/> | ||
<exclude name="FactoryOnlyPublicMethodsRule"/> | ||
<exclude name="ZedDependencyProviderPropelQueryConstantNameRule"/> | ||
<exclude name="ZedBusinessDirectoryNoModelRule"/> | ||
<exclude name="ZedDependencyProviderMethodNameRule"/> | ||
</rule> | ||
</ruleset> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
<?php | ||
|
||
use PHP_CodeSniffer\Config; | ||
|
||
define('APPLICATION_ROOT_DIR', __DIR__); | ||
define('APPLICATION_VENDOR_DIR', APPLICATION_ROOT_DIR . '/vendor'); | ||
define('APPLICATION_SOURCE_DIR', APPLICATION_ROOT_DIR . '/src'); | ||
define('APPLICATION', ''); | ||
define('APPLICATION_ENV', ''); | ||
define('APPLICATION_STORE', ''); | ||
define('APPLICATION_CODE_BUCKET', ''); | ||
|
||
//require_once(__DIR__ . '/src/Generated/Client/Ide/AutoCompletion.php'); | ||
//require_once(__DIR__ . '/src/Generated/Service/Ide/AutoCompletion.php'); | ||
//require_once(__DIR__ . '/src/Generated/Zed/Ide/AutoCompletion.php'); | ||
|
||
$codeceptionShimFilePath = __DIR__ . '/vendor/codeception/codeception/shim.php'; | ||
if (file_exists($codeceptionShimFilePath)) { | ||
require_once($codeceptionShimFilePath); | ||
} | ||
|
||
$manualAutoload = APPLICATION_VENDOR_DIR . '/squizlabs/php_codesniffer/autoload.php'; | ||
if (!class_exists(Config::class) && file_exists($manualAutoload)) { | ||
require $manualAutoload; | ||
} | ||
|
||
// Shim to not throw "Function opcache_invalidate not found" error when opcache is not enabled | ||
if (!function_exists('opcache_invalidate')) { | ||
/** | ||
* @param string $script | ||
* @param bool $force | ||
* | ||
* @return void | ||
*/ | ||
function opcache_invalidate($script, $force = false): void | ||
{ | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
parameters: | ||
level: 4 | ||
reportUnmatchedIgnoredErrors: false | ||
scanDirectories: | ||
- src/Orm/Zed | ||
- src/Generated | ||
ignoreErrors: | ||
- '#.* on an unknown class Generated\\(Client|Glue|Service|Yves|Zed)\\.*#' | ||
- '#.*Access to undefined constant Orm\\Zed\\.*#' | ||
- '#.*Call to an undefined method Orm\\Zed\\.*#' | ||
- '#Dead catch - Exception is never thrown in the try block.#' | ||
|
||
bootstrapFiles: | ||
- '%rootDir%/../../../phpstan-bootstrap.php' | ||
|
||
checkMissingIterableValueType: false | ||
checkGenericClassInNonGenericObjectType: false | ||
|
||
dynamicConstantNames: | ||
- APPLICATION | ||
- APPLICATION_ENV | ||
- APPLICATION_STORE | ||
- APPLICATION_CODE_BUCKET |
12 changes: 12 additions & 0 deletions
12
src/ValanticSpryker/Shared/NavigationGenerator/NavigationGeneratorConstants.php
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
<?php | ||
|
||
declare(strict_types = 1); | ||
|
||
namespace ValanticSpryker\Shared\NavigationGenerator; | ||
|
||
interface NavigationGeneratorConstants | ||
{ | ||
public const OUTPUT_PATH = 'NAVIGATION_GENERATOR:OUTPUT_PATH'; | ||
public const FALLBACK_LOCALE = 'NAVIGATION_GENERATOR:FALLBACK_LOCALE'; | ||
public const NAVIGATION_KEY = 'NAVIGATION_GENERATOR:NAVIGATION_KEY'; | ||
} |
Oops, something went wrong.