#
# Copyright (c) 2021, 2025 Oracle and/or its affiliates. All rights reserved.
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License v. 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0,
# or the Eclipse Distribution License v. 1.0 which is available at
# http://www.eclipse.org/org/documents/edl-v10.php.
#
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
#

name: Yasson

on: [push, pull_request]

jobs:
  build:
    name: Test on JDK ${{ matrix.java_version }}
    runs-on: ubuntu-latest

    strategy:
      matrix:
        java_version: [ 11, 17, 21 ]

    steps:
      - name: Checkout for build
        uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
        with:
          fetch-depth: 0
      - name: Set up compile JDK
        uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
        with: #Compile java needs to be the highest to ensure proper compilation of the multi-release jar
          distribution: 'temurin'
          java-version: 17
          cache: 'maven'
      - name: Copyright
        run: bash etc/copyright.sh
      - name: Checkstyle
        run: mvn -B checkstyle:checkstyle
      - name: Yasson install
        run: mvn -U -C clean install -DskipTests
      - name: Yasson tests
        run: mvn -U -B -C -Dmaven.javadoc.skip=true verify
      - name: JSONB-API TCK
        run: cd yasson-tck && mvn -U -B test -DargLine="-Djava.locale.providers=COMPAT"
