Skip to content

Fix currentTime and sliderPos not reaching end of media #97

Fix currentTime and sliderPos not reaching end of media

Fix currentTime and sliderPos not reaching end of media #97

Workflow file for this run

name: Build and Test
on:
pull_request:
branches: [ master ]
jobs:
build-natives:
uses: ./.github/workflows/build-natives.yml
build-and-test:
needs: build-natives
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Download Windows natives
uses: actions/download-artifact@v4
with:
name: windows-natives
path: mediaplayer/src/jvmMain/resources/
merge-multiple: true
- name: Download macOS natives
uses: actions/download-artifact@v4
with:
name: macos-natives
path: mediaplayer/src/jvmMain/resources/
merge-multiple: true
- name: Verify all natives present
shell: bash
run: |
EXPECTED=(
"mediaplayer/src/jvmMain/resources/win32-x86-64/NativeVideoPlayer.dll"
"mediaplayer/src/jvmMain/resources/win32-arm64/NativeVideoPlayer.dll"
"mediaplayer/src/jvmMain/resources/darwin-aarch64/libNativeVideoPlayer.dylib"
"mediaplayer/src/jvmMain/resources/darwin-x86-64/libNativeVideoPlayer.dylib"
)
MISSING=0
for f in "${EXPECTED[@]}"; do
if [ -f "$f" ]; then
echo "OK: $f ($(wc -c < "$f") bytes)"
else
echo "MISSING: $f" >&2
MISSING=1
fi
done
if [ "$MISSING" = "1" ]; then exit 1; fi
- name: Set up JDK
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
if: runner.os != 'Windows'
- name: Build and test with Gradle
run: ./gradlew build test --no-daemon
shell: bash
- name: Upload test reports
uses: actions/upload-artifact@v4
if: always()
with:
name: test-reports-${{ matrix.os }}
path: '**/build/reports/tests/'