Skip to content

Commit

Permalink
WIP
Browse files Browse the repository at this point in the history
  • Loading branch information
RhysLees committed Feb 8, 2024
1 parent 29d82b6 commit 32d2a17
Show file tree
Hide file tree
Showing 14 changed files with 145 additions and 65 deletions.
52 changes: 52 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Bug Report
description: Report an Issue or Bug with the Package
title: "[Bug]: "
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
We're sorry to hear you have a problem. Can you help us solve it by providing the following details.
- type: textarea
id: what-happened
attributes:
label: What happened?
description: What did you expect to happen?
placeholder: I cannot currently do X thing because when I do, it breaks X thing.
validations:
required: true

- type: input
id: package-version
attributes:
label: Package Version
description: What version of our Package are you running? Please be as specific as possible
placeholder: 2.0.0
validations:
required: true
- type: input
id: php-version
attributes:
label: PHP Version
description: What version of PHP are you running? Please be as specific as possible
placeholder: 8.2.0
validations:
required: true
- type: input
id: laravel-version
attributes:
label: Laravel Version
description: What version of Laravel are you running? Please be as specific as possible
placeholder: 9.0.0
validations:
required: true
- type: dropdown
id: operating-systems
attributes:
label: Which operating systems does with happen with?
description: You may select more than one.
multiple: true
options:
- macOS
- Windows
- Linux
15 changes: 6 additions & 9 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Ask a question
url: https://github.com/codebar-ag/laravel-flatfox/discussions/new?category=q-a
about: Ask the community for help
- name: Request a feature
url: https://github.com/codebar-ag/laravel-flatfox/discussions/new?category=ideas
about: Share ideas for new features
- name: Report a bug
url: https://github.com/codebar-ag/laravel-flatfox/issues/new
about: Report a reproducable bug
- name: Questions & Feature Requests
url: https://github.com/codebar-ag/laravel-postfinance-b2b/issues/new
about: Ask the community for help
- name: Report a security issue
url: https://github.com/codebar-ag/laravel-postfinance-b2b/security/policy
about: Learn how to notify us for sensitive bugs
10 changes: 6 additions & 4 deletions .github/workflows/dependabot-auto-merge.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@

name: dependabot-auto-merge
on: pull_request_target

Expand All @@ -10,20 +11,21 @@ jobs:
runs-on: ubuntu-latest
if: ${{ github.actor == 'dependabot[bot]' }}
steps:

- name: Dependabot metadata
id: metadata
uses: dependabot/[email protected]

uses: dependabot/[email protected]
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"

- name: Auto-merge Dependabot PRs for semver-minor updates
if: ${{steps.metadata.outputs.update-type == 'version-update:semver-minor'}}
run: gh pr merge --auto --merge "$PR_URL"
env:
PR_URL: ${{github.event.pull_request.html_url}}
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}

- name: Auto-merge Dependabot PRs for semver-patch updates
if: ${{steps.metadata.outputs.update-type == 'version-update:semver-patch'}}
run: gh pr merge --auto --merge "$PR_URL"
Expand Down
20 changes: 20 additions & 0 deletions .github/workflows/dependency-review.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Dependency Review Action
#
# This Action will scan dependency manifest files that change as part of a Pull Request, surfacing known-vulnerable versions of the packages declared or updated in the PR. Once installed, if the workflow run is marked as required, PRs introducing known-vulnerable packages will be blocked from merging.
#
# Source repository: https://github.com/actions/dependency-review-action
# Public documentation: https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review#dependency-review-enforcement
name: 'Dependency Review'
on: [pull_request]

permissions:
contents: read

jobs:
dependency-review:
runs-on: ubuntu-latest
steps:
- name: 'Checkout Repository'
uses: actions/checkout@v3
- name: 'Dependency Review'
uses: actions/dependency-review-action@v3
Original file line number Diff line number Diff line change
@@ -1,12 +1,9 @@
name: Check & fix styling
name: Fix PHP code style issues

on:
push:
branches:
- styling
on: [push]

jobs:
php-cs-fixer:
php-code-styling:
runs-on: ubuntu-latest

steps:
Expand All @@ -15,10 +12,8 @@ jobs:
with:
ref: ${{ github.head_ref }}

- name: Run PHP CS Fixer
uses: docker://oskarstark/php-cs-fixer-ga
with:
args: --config=.php-cs-fixer.dist.php --allow-risky=yes
- name: Fix PHP code style issues
uses: aglipanci/[email protected]

- name: Commit changes
uses: stefanzweifel/git-auto-commit-action@v4
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/phpstan.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: PHPStan

on:
push:
paths:
- '**.php'
- 'phpstan.neon.dist'
branches: [ main ]
pull_request:
branches: [ main ]

jobs:
phpstan:
Expand All @@ -16,11 +16,11 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.1'
php-version: '8.2'
coverage: none

- name: Install composer dependencies
uses: ramsey/composer-install@v1
uses: ramsey/composer-install@v2

- name: Run PHPStan
run: ./vendor/bin/phpstan --error-format=github
run: ./vendor/bin/phpstan analyse src --error-format=github
28 changes: 17 additions & 11 deletions .github/workflows/run-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,15 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
max-parallel: 1
matrix:
# os: [ ubuntu-latest, windows-latest ]
os: [ ubuntu-latest ]
php: [ 8.1 ]
laravel: [ 9.* ]
#stability: [ prefer-lowest, prefer-stable ]
stability: [ prefer-stable ]
os: [ ubuntu-latest, windows-latest ]
php: [ 8.2, 8.3 ]
laravel: [ 10.* ]
stability: [ prefer-lowest, prefer-stable ]
include:
- laravel: 9.*
testbench: 7.*
- laravel: 10.*
testbench: 8.*

name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.stability }} - ${{ matrix.os }}

Expand All @@ -45,12 +44,19 @@ jobs:
composer require "laravel/framework:${{ matrix.laravel }}" "orchestra/testbench:${{ matrix.testbench }}" --no-interaction --no-update
composer update --${{ matrix.stability }} --prefer-dist --no-interaction
- name: Set phpunit.xml
run: cp phpunit.xml.dist phpunit.xml

- name: Execute tests
run: vendor/bin/pest
env:
ZAMMAD_URL: ${{ secrets.ZAMMAD_URL }}
ZAMMAD_TOKEN: ${{ secrets.ZAMMAD_TOKEN }}
ZAMMAD_OBJECT_REFERENCE_ERROR_IGNORE: true
POSTFINANCE_B2B_USERNAME: ${{ secrets.POSTFINANCE_B2B_USERNAME }}
POSTFINANCE_B2B_PASSWORD: ${{ secrets.POSTFINANCE_B2B_PASSWORD }}
POSTFINANCE_B2B_DEBUG: ${{ secrets.POSTFINANCE_B2B_DEBUG }}
POSTFINANCE_B2B_TESTS_PAYER_ID: ${{ secrets.POSTFINANCE_B2B_TESTS_PAYER_ID }}
POSTFINANCE_B2B_TESTS_BILLER_ID: ${{ secrets.POSTFINANCE_B2B_TESTS_BILLER_ID }}
POSTFINANCE_B2B_TESTS_TRANSACTION_ID: ${{ secrets.POSTFINANCE_B2B_TESTS_TRANSACTION_ID }}
POSTFINANCE_B2B_TESTS_FILE_TYPE: ${{ secrets.POSTFINANCE_B2B_TESTS_FILE_TYPE }}

- name: Store test reports
uses: actions/upload-artifact@v2
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
.php_cs.cache
.php-cs-fixer.cache
.phpunit.result.cache
.phpunit.cache
.DS_STORE
build
composer.lock
Expand Down
12 changes: 10 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,16 @@ cp phpunit.xml.dist phpunit.xml
Modify environment variables in the phpunit.xml-file:

```xml


<env name="POSTFINANCE_B2B_WSDL" value="wds"/>
<env name="POSTFINANCE_B2B_CACHE_WSDL" value="wsdl"/>
<env name="POSTFINANCE_B2B_USERNAME" value="username"/>
<env name="POSTFINANCE_B2B_PASSWORD" value="password"/>
<env name="POSTFINANCE_B2B_DEBUG" value="debug"/>

<env name="POSTFINANCE_B2B_TESTS_PAYER_ID" value=""/>
<env name="POSTFINANCE_B2B_TESTS_BILLER_ID" value=""/>
<env name="POSTFINANCE_B2B_TESTS_TRANSACTION_ID" value=""/>
<env name="POSTFINANCE_B2B_TESTS_FILE_TYPE" value="RGXMLSIG"/>
```

Run the tests:
Expand Down
31 changes: 16 additions & 15 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,31 +19,32 @@
}
],
"require": {
"php": "^8.2",
"php": "^8.2|^8.3",
"ext-soap": "*",
"ext-xsl": "*",
"guzzlehttp/guzzle": "^7.5",
"guzzlehttp/guzzle": "^7.8",
"illuminate/contracts": "^10.0",
"monolog/monolog": "^3.5",
"nyholm/psr7": "^1.8",
"php-http/logger-plugin": "^1.3",
"php-soap/psr18-wsse-middleware": "^2.3",
"phpro/soap-client": "^3.1",
"spatie/laravel-package-tools": "^1.9.2",
"symfony/http-client": "^6.2"
"spatie/laravel-package-tools": "^1.16",
"symfony/http-client": "^6.4"
},
"require-dev": {
"laravel/pint": "^1.5",
"nunomaduro/collision": "^7.0",
"nunomaduro/larastan": "^2.4.0",
"orchestra/testbench": "^8.0",
"pestphp/pest": "2.x-dev",
"pestphp/pest-plugin-laravel": "2.x-dev",
"phpstan/extension-installer": "^1.1",
"phpstan/phpstan-deprecation-rules": "^1.0",
"phpstan/phpstan-phpunit": "^1.0",
"phpunit/phpunit": "^10.0",
"spatie/laravel-ray": "^1.9"
"laravel/pint": "^1.13",
"nunomaduro/collision": "^7.10",
"nunomaduro/larastan": "^2.8",
"orchestra/testbench": "^8.21",
"pestphp/pest": "^2.3",
"pestphp/pest-plugin-laravel": "^2.2",
"pestphp/pest-plugin-arch": "^2.6",
"phpstan/extension-installer": "^1.3",
"phpstan/phpstan-deprecation-rules": "^1.1",
"phpstan/phpstan-phpunit": "^1.3",
"phpunit/phpunit": "^10.5",
"spatie/laravel-ray": "^1.35"
},
"autoload": {
"psr-4": {
Expand Down
3 changes: 2 additions & 1 deletion src/Client/PostfinanceClientFactory.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
use Phpro\SoapClient\Caller\EngineCaller;
use Phpro\SoapClient\Caller\EventDispatchingCaller;
use Phpro\SoapClient\Soap\DefaultEngineFactory;
use function Psl\invariant;
use Soap\ExtSoapEngine\ExtSoapOptions;
use Soap\Psr18Transport\Middleware\RemoveEmptyNodesMiddleware;
use Soap\Psr18Transport\Psr18Transport;
Expand All @@ -21,6 +20,8 @@
use Soap\Psr18WsseMiddleware\WsseMiddleware;
use Symfony\Component\EventDispatcher\EventDispatcher;

use function Psl\invariant;

class PostfinanceClientFactory
{
/**
Expand Down
3 changes: 1 addition & 2 deletions tests/Feature/GetInvoiceListPayerTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,4 @@
$response = $client->getInvoiceListPayer(new GetInvoiceListPayer($payerId, false));

expect($response->getGetInvoiceListPayerResult()->getInvoiceReport())->toBeIterable();
})
->group('get', 'test');
})->group('get', 'test');
3 changes: 1 addition & 2 deletions tests/Feature/GetInvoicePayerTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,4 @@
$response = $client->getInvoicePayer(new GetInvoicePayer($payerId, $billerId, $transactionId, $fileType));

expect($response->getGetInvoicePayerResult()->getData())->toBeString()->not()->toBeEmpty();
})
->group('get', 'test');
})->group('get', 'test');
5 changes: 2 additions & 3 deletions tests/Feature/PingTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@

$client = PostfinanceClientFactory::factory($config);
$response = $client->executePing(new ExecutePing(null, $payerId, null, null));
expect($response->getExecutePingResult())->toBeNumeric();

})
->group('get', 'test');
expect($response->getExecutePingResult())->toBeNumeric();
})->group('get', 'test');

0 comments on commit 32d2a17

Please sign in to comment.