From 77ec79caafb2f5221756eba577421e777044bfcf Mon Sep 17 00:00:00 2001 From: LuitelSamikshya Date: Tue, 16 Nov 2021 18:23:43 -0600 Subject: [PATCH] github action for functional test --- .github/workflows/functional-test.yml | 25 ++++++ .gitignore | 7 +- cmd/functional-test/testcases.txt | 120 ++++++++++---------------- 3 files changed, 76 insertions(+), 76 deletions(-) create mode 100644 .github/workflows/functional-test.yml diff --git a/.github/workflows/functional-test.yml b/.github/workflows/functional-test.yml new file mode 100644 index 0000000..27e9a63 --- /dev/null +++ b/.github/workflows/functional-test.yml @@ -0,0 +1,25 @@ +name: 🧪 Functional Test + on: + push: + pull_request: + workflow_dispatch: + + + jobs: + functional: + name: Functional Test + runs-on: ubuntu-latest + steps: + - name: Set up Go + uses: actions/setup-go@v2 + with: + go-version: 1.17 + + - name: Check out code + uses: actions/checkout@v2 + + - name: Functional Tests + run: | + chmod +x run.sh + bash run.sh + working-directory: cmd/functional-test diff --git a/.gitignore b/.gitignore index 3b6ed0b..2390b4e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,9 @@ cmd/httpx/httpx integration_tests/httpx -integration_tests/integration-test \ No newline at end of file +integration_tests/integration-test +cmd/functional-test/httpx_dev +cmd/functional-test/functional-test +cmd/functional-test/httpx +cmd/functional-test/*.cfg + diff --git a/cmd/functional-test/testcases.txt b/cmd/functional-test/testcases.txt index 90c4f69..d794dcf 100644 --- a/cmd/functional-test/testcases.txt +++ b/cmd/functional-test/testcases.txt @@ -1,79 +1,49 @@ -www.example.com {{binary}} -www.example.com {{binary}} -l test-data/request.txt -www.example.com {{binary}} -request test-data/raw-request.txt -www.example.com {{binary}} -status-code -www.example.com {{binary}} -tech-detect -www.example.com {{binary}} -content-length -www.example.com {{binary}} -web-server -www.example.com {{binary}} -content-type -www.example.com {{binary}} -response-time -www.example.com {{binary}} -title -www.example.com {{binary}} -location -www.example.com {{binary}} -method -www.example.com {{binary}} -websocket -www.example.com {{binary}} -ip -www.example.com {{binary}} -cname -www.example.com {{binary}} -cdn -www.example.com {{binary}} -probe -www.example.com {{binary}} -no-fallback -www.example.com {{binary}} -match-code 200, -mc 200 -www.example.com {{binary}} -match-length 100, -ml 100 -www.example.com {{binary}} -match-string xyz, -ms xyz -www.example.com {{binary}} -match-regex bbb, -mr bbb -www.example.com {{binary}} -extract-regex aaa, -er aaa -www.example.com {{binary}} -filter-code 401, -fc 401 -www.example.com {{binary}} -filter-length 23, -fl 23 -www.example.com {{binary}} -filter-string -www.example.com {{binary}} -filter-regex -www.example.com {{binary}} -threads 50 -www.example.com {{binary}} -rate-limit 5 -www.example.com {{binary}} -tls-grab -www.example.com {{binary}} -tls-probe -www.example.com {{binary}} -csp-probe -www.example.com {{binary}} -pipeline -www.example.com {{binary}} -http2 -www.example.com {{binary}} -vhost -www.example.com {{binary}} -ports -www.example.com {{binary}} -path -www.example.com {{binary}} -paths -www.example.com {{binary}} -output test-data/request.txt -www.example.com {{binary}} -store-response -www.example.com {{binary}} -store-response-dir test-data/request.txt -www.example.com {{binary}} -json -www.example.com {{binary}} -include-response -json -www.example.com {{binary}} -include-chain -www.example.com {{binary}} -store-chain -www.example.com {{binary}} -csv -www.example.com {{binary}} -response-size-to-save 1028 -www.example.com {{binary}} -response-size-to-read 1028 -www.example.com {{binary}} -allow 127.0.0.1:8080 -www.example.com {{binary}} -deny 127.0.0.1:6089 +www.example.com {{binary}} -silent +www.example.com {{binary}} -silent -l test-data/request.txt +www.example.com {{binary}} -silent -request test-data/raw-request.txt +www.example.com {{binary}} -silent -response-time +www.example.com {{binary}} -silent -title +www.example.com {{binary}} -silent -location +www.example.com {{binary}} -silent -cname +www.example.com {{binary}} -silent -cdn +www.example.com {{binary}} -silent -probe +www.example.com {{binary}} -silent -no-fallback +www.example.com {{binary}} -silent -match-code 200, -mc 200 +www.example.com {{binary}} -silent -match-length 100, -ml 100 +www.example.com {{binary}} -silent -match-string xyz, -ms xyz +www.example.com {{binary}} -silent -match-regex bbb, -mr bbb +www.example.com {{binary}} -silent -filter-code 401, -fc 401 +www.example.com {{binary}} -silent -filter-length 23, -fl 23 +www.example.com {{binary}} -silent -filter-string +www.example.com {{binary}} -silent -threads 50 +www.example.com {{binary}} -silent -rate-limit 5 +www.example.com {{binary}} -silent -tls-grab +www.example.com {{binary}} -silent -pipeline +www.example.com {{binary}} -silent -http2 +www.example.com {{binary}} -silent -ports +www.example.com {{binary}} -silent -paths +www.example.com {{binary}} -silent -output test-data/request.txt +www.example.com {{binary}} -silent -store-response +www.example.com {{binary}} -silent -include-response -json +www.example.com {{binary}} -silent -include-chain +www.example.com {{binary}} -silent -csv +www.example.com {{binary}} -silent -response-size-to-save 1028 +www.example.com {{binary}} -silent -response-size-to-read 1028 +www.example.com {{binary}} -silent -allow 127.0.0.1:8080 +www.example.com {{binary}} -silent -deny 127.0.0.1:6089 www.example.com {{binary}} -random-agent -www.example.com {{binary}} -header -www.example.com {{binary}} -proxy www.example.com -www.example.com {{binary}} -unsafe -www.example.com {{binary}} -resume -www.example.com {{binary}} -no-color -www.example.com {{binary}} -no-fallback-scheme -www.example.com {{binary}} -follow-redirects -www.example.com {{binary}} -follow-host-redirects -www.example.com {{binary}} -max-redirects 10 -www.example.com {{binary}} -vhost-input -www.example.com {{binary}} -x -www.example.com {{binary}} -body -www.example.com {{binary}} -stream -www.example.com {{binary}} -skip-dedupe -stream -www.example.com {{binary}} -silent -www.example.com {{binary}} -verbose -www.example.com {{binary}} -version -www.example.com {{binary}} -debug -www.example.com {{binary}} -debug-req -www.example.com {{binary}} -debug-resp -www.example.com {{binary}} -stats -www.example.com {{binary}} -retries 0 -www.example.com {{binary}} -timeout 10 -www.example.com {{binary}} -max-host-error 30 -www.example.com {{binary}} -exclude-cdn +www.example.com {{binary}} -silent -proxy www.example.com +www.example.com {{binary}} -silent -unsafe +www.example.com {{binary}} -silent -resume +www.example.com {{binary}} -silent -max-redirects 10 +www.example.com {{binary}} -silent -vhost-input +www.example.com {{binary}} -silent -x +www.example.com {{binary}} -silent -body +www.example.com {{binary}} -silent -skip-dedupe -stream +www.example.com {{binary}} -silent -retries 10 +www.example.com {{binary}} -silent -timeout 10 +www.example.com {{binary}} -silent -max-host-error 30 +www.example.com {{binary}} -silent -exclude-cdn