Add integration tests to CI (#82)
All checks were successful
Cargo CI / Build and Test (push) Successful in 2m1s
Cargo CI / Lint (push) Successful in 43s

Closes #81

Reviewed-on: #82
This commit is contained in:
Wojciech Kozlowski 2024-01-06 16:14:07 +01:00
parent b1cf5d621d
commit 26f0ccd842
9 changed files with 48 additions and 5 deletions

View File

@ -3,4 +3,5 @@ FROM docker.io/library/rust:1.75
RUN rustup component add clippy rustfmt RUN rustup component add clippy rustfmt
RUN apt-get update && apt-get install -y \ RUN apt-get update && apt-get install -y \
beets \
nodejs nodejs

View File

@ -8,14 +8,21 @@ on:
env: env:
CARGO_TERM_COLOR: always CARGO_TERM_COLOR: always
BEETSDIR: ./
jobs: jobs:
pipeline: build_and_test:
name: Pipeline name: Build and Test
container: docker.io/drrobot/musichoard-ci:rust-1.75 container: docker.io/drrobot/musichoard-ci:rust-1.75
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- run: cargo build --verbose --all-features --all-targets - run: cargo build --verbose --all-features --all-targets
- run: cargo test --verbose --all-features --lib --bins --no-fail-fast - run: cargo test --verbose --all-features --all-targets --no-fail-fast
lint:
name: Lint
container: docker.io/drrobot/musichoard-ci:rust-1.75
steps:
- uses: actions/checkout@v3
- run: cargo clippy --verbose --all-features --all-targets -- -D warnings - run: cargo clippy --verbose --all-features --all-targets -- -D warnings
- run: cargo fmt --verbose -- --check - run: cargo fmt --verbose -- --check

1
.gitignore vendored
View File

@ -1,3 +1,4 @@
/target /target
/codecov /codecov
database.json database.json
library.db

View File

@ -1 +0,0 @@
library

File diff suppressed because one or more lines are too long

2
tests/files/library/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
music
state.pickle

View File

@ -0,0 +1,15 @@
directory: tests/files/library/music
library: tests/files/library/library.db
import:
copy: no
move: no
write: no
autotag: no
plugins: info
paths:
default: $albumartist/$year $album%aunique{}/$track $title
singleton: $artist/Non-Album/$year $title
comp: Compilations/$year $album%aunique{}/$track $title

Binary file not shown.

View File

@ -402,6 +402,24 @@ pub static COLLECTION: Lazy<Vec<Artist>> = Lazy::new(|| -> Collection {
).unwrap()), ).unwrap()),
}, },
albums: vec![Album { albums: vec![Album {
id: AlbumId {
year: 2011,
title: String::from("Paper Plague"),
},
tracks: vec![
Track {
id: TrackId {
number: 0,
title: String::from("Paper Plague"),
},
artist: vec![String::from("Heavens Basement")],
quality: Quality {
format: Format::Mp3,
bitrate: 320,
},
},
],
}, Album {
id: AlbumId { id: AlbumId {
year: 2011, year: 2011,
title: String::from("Unbreakable"), title: String::from("Unbreakable"),