Skip to content

Commit 6e6233f

Browse files
authored
Merge pull request #19 from impresscms-dev/add-tests
Rewritten some parts to add some tests; some tests also added; composer now versions dependencies
2 parents 6bf6a96 + b5d9387 commit 6e6233f

21 files changed

+367
-26
lines changed

.github/dependabot.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,10 @@ updates:
77
interval: monthly
88
labels:
99
- dependencies
10+
11+
- package-ecosystem: "composer"
12+
directory: "/"
13+
schedule:
14+
interval: monthly
15+
labels:
16+
- dependencies

.github/workflows/on-pull-request.yml

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,40 @@ on:
66
- main
77

88
jobs:
9+
10+
test:
11+
runs-on: ubuntu-latest
12+
strategy:
13+
matrix:
14+
php:
15+
- 7.4
16+
- 8.0
17+
- 8.1
18+
- 8.2
19+
20+
steps:
21+
- name: Checkouting code...
22+
uses: actions/checkout@v3
23+
24+
- name: Installing PHP...
25+
uses: shivammathur/[email protected]
26+
with:
27+
php-version: ${{ matrix.php }}
28+
extensions: curl, gd, json, mbstring, pcre, session
29+
coverage: none
30+
tools: composer:v2
31+
32+
- name: Setup BATS
33+
uses: mig4/setup-bats@v1
34+
with:
35+
bats-version: 1.8.2
36+
37+
- name: Test
38+
run: bats tests
939

1040
dependabot:
11-
# needs:
12-
# - test
41+
needs:
42+
- test
1343
permissions:
1444
pull-requests: write
1545
contents: write

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
/vendor/
2+
/composer.lock
3+
.idea/

action.yml

Lines changed: 12 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -20,27 +20,19 @@ runs:
2020
using: 'composite'
2121
steps:
2222
- name: Setting env variables...
23-
run: |
24-
GENERATOR_TMP_SUFIX=${{ github.sha }}-${{ github.run_id }}-${{ github.github.run_attempt }}
25-
GENERATOR_TMP_PATH="${{ runner.temp }}"
26-
GENERATOR_TMP_FILES_PATH=$GENERATOR_TMP_PATH/files-$GENERATOR_TMP_SUFIX
27-
echo "COPY_DATA_PATH=$GENERATOR_TMP_PATH/data-$GENERATOR_TMP_SUFIX" >> $GITHUB_ENV
28-
echo "GENERATOR_TMP_FILES_PATH=$GENERATOR_TMP_FILES_PATH" >> $GITHUB_ENV
29-
echo "RULES_FILE=$GENERATOR_TMP_FILES_PATH/filtering-rules.lst" >> $GITHUB_ENV
30-
echo "PHP_CLASSES_ORIG_FILE=$GENERATOR_TMP_FILES_PATH/php-classes.original.lst" >> $GITHUB_ENV
31-
echo "PHP_CLASSES_FILTERED_FILE=$GENERATOR_TMP_FILES_PATH/php-classes.filtered.lst" >> $GITHUB_ENV
32-
shell: bash
23+
env:
24+
GENERATOR_TMP_SUFIX: ${{ github.sha }}-${{ github.run_id }}-${{ github.github.run_attempt }}
25+
GENERATOR_TMP_PATH: ${{ runner.temp }}
26+
ACTION_BIN_PATH: ${{ github.action_path }}/bin
27+
run: $ACTION_BIN_PATH/generate-env.sh "$GENERATOR_TMP_SUFIX" "$GENERATOR_TMP_PATH" "$ACTION_BIN_PATH" >> $GITHUB_ENV
28+
shell: bash
3329

3430
- name: Creating tmp folders
35-
run: |
36-
rm -rf ${{ env.COPY_DATA_PATH }} || true
37-
mkdir -p ${{ env.COPY_DATA_PATH }}
38-
rm -rf ${{ env.GENERATOR_TMP_FILES_PATH }} || true
39-
mkdir -p ${{ env.GENERATOR_TMP_FILES_PATH }}
31+
run: $ACTION_BIN_PATH/create-temp-folders.sh
4032
shell: bash
4133

4234
- name: Copying current project to tmp folder...
43-
run: cp -R ./* ${{ env.COPY_DATA_PATH }}/
35+
run: $ACTION_BIN_PATH/copy-current-project-to-tmp-folder.sh
4436
shell: bash
4537

4638
- name: Getting PHP class list...
@@ -64,24 +56,20 @@ runs:
6456

6557
- name: Generating generator config...
6658
env:
67-
ACTION_PATH: ${{ github.action_path }}
6859
PHPDOCMD_FILE: ${{ env.COPY_DATA_PATH }}/.phpdoc-md
6960
CLASS_ROOT_NAMESPACE: ${{ inputs.class_root_namespace }}
7061
DOCS_PATH: ${{ inputs.output_path }}
71-
run: |
72-
php $ACTION_PATH/generate-config.php "$PHPDOCMD_FILE" "$PHP_CLASSES_FILTERED_FILE" "$CLASS_ROOT_NAMESPACE" "$DOCS_PATH"
62+
run: $ACTION_BIN_PATH/generate-config.php "$PHPDOCMD_FILE" "$PHP_CLASSES_FILTERED_FILE" "$CLASS_ROOT_NAMESPACE" "$DOCS_PATH"
7363
shell: bash
7464

7565
- name: Including documentation generator...
76-
run: composer require --no-plugins --ignore-platform-reqs --no-scripts --working-dir=${{ env.COPY_DATA_PATH }}/ --dev 'clean/phpdoc-md=^0.19'
66+
run: $ACTION_BIN_PATH/add-composer-packages.sh
7767
shell: bash
7868

7969
- name: Generating documentation...
80-
run: composer exec --working-dir=${{ env.COPY_DATA_PATH }}/ phpdoc-md
70+
run: $ACTION_BIN_PATH/generate-docs.sh
8171
shell: bash
8272

8373
- name: Deleting tmp data...
84-
run: |
85-
rm -rf ${{ env.COPY_DATA_PATH }} || true
86-
rm -rf ${{ env.GENERATOR_TMP_FILES_PATH }} || true
74+
run: $ACTION_BIN_PATH/delete-temp-folders.sh
8775
shell: bash

bin/add-composer-packages.sh

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#!/usr/bin/env bash
2+
3+
set -e
4+
5+
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
6+
7+
CURRENT_CMD=$(
8+
cat <<EOF
9+
composer require \
10+
$("$SCRIPT_DIR"/get-composer-dependencies.php) \
11+
--no-plugins \
12+
--ignore-platform-reqs \
13+
--no-scripts \
14+
--working-dir=$COPY_DATA_PATH
15+
EOF
16+
);
17+
18+
$CURRENT_CMD
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
#!/usr/bin/env bash
2+
3+
cp -R ./. "$COPY_DATA_PATH/"

bin/create-temp-folders.sh

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#!/usr/bin/env bash
2+
3+
set -e
4+
5+
rm -rf "$COPY_DATA_PATH" || true
6+
mkdir -p "$COPY_DATA_PATH"
7+
rm -rf "$GENERATOR_TMP_FILES_PATH" || true
8+
mkdir -p "$GENERATOR_TMP_FILES_PATH"

bin/delete-temp-folders.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#!/usr/bin/env bash
2+
3+
rm -rf "$COPY_DATA_PATH" || true
4+
rm -rf "$GENERATOR_TMP_FILES_PATH" || true

generate-config.php renamed to bin/generate-config.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#!/usr/bin/env php
12
<?php
23

34
$outputFile = $argv[1];

bin/generate-docs.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
#!/usr/bin/env bash
2+
3+
composer exec --working-dir="$COPY_DATA_PATH" phpdoc-md

0 commit comments

Comments
 (0)