Skip to content

Fixed index-out-of-bounds error in MultivalueMap. #197

Fixed index-out-of-bounds error in MultivalueMap.

Fixed index-out-of-bounds error in MultivalueMap. #197

Workflow file for this run

# Main testing workflow for Handy-Httpd.
# All testing is done in a single workflow (and job) to reduce load on the
# runners, since we only need to checkout and setup DLang once.
name: Testing
on:
push:
branches: ["*"]
paths:
- source/**
- examples/**
- integration-tests/**
- .github/workflows/testing.yml
pull_request:
branches: ["main"]
permissions:
contents: read
jobs:
unit-tests:
name: Unit Tests
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
compiler: [dmd-latest, ldc-1.31.0, ldc-latest]
exclude:
- os: macOS-latest
compiler: dmd-latest
runs-on: ${{ matrix.os }}
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: Setup DLang
uses: dlang-community/setup-dlang@v1
with:
compiler: ${{ matrix.compiler }}
- name: Build handy-httpd
run: dub -q build
- name: Run Unit Tests
run: dub -q test
integration-tests:
name: Integration Tests
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
compiler: [dmd-latest, ldc-1.31.0, ldc-latest]
exclude:
- os: macOS-latest
compiler: dmd-latest
runs-on: ${{ matrix.os }}
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: Setup DLang
uses: dlang-community/setup-dlang@v1
with:
compiler: ${{ matrix.compiler }}
- name: Setup Java
uses: actions/setup-java@v3
with:
distribution: "temurin"
java-version: "17"
- name: Speed Test
working-directory: integration-tests/speed-test
run: dub -q run
- name: File Test
working-directory: integration-tests/file-test
run: java Tests.java
- name: Multipart Test
working-directory: integration-tests/multipart
run: dub run --single server.d
examples:
name: Examples
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
compiler: [dmd-latest, ldc-1.31.0, ldc-latest]
exclude:
- os: macOS-latest
compiler: dmd-latest
runs-on: ${{ matrix.os }}
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: Setup DLang
uses: dlang-community/setup-dlang@v1
with:
compiler: ${{ matrix.compiler }}
- name: Test Examples
working-directory: examples
run: rdmd runner.d test
- name: Clean Examples
working-directory: examples
run: rdmd runner.d clean