mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-05-01 14:30:14 +02:00
add just cov-md and bump total coverage to 29.26%
This commit is contained in:
parent
5b797342b7
commit
fd32cbc34c
7
Justfile
7
Justfile
|
@ -22,10 +22,15 @@ prof:
|
|||
doc:
|
||||
cargo doc -j4 --workspace --document-private-items
|
||||
covfig := "CARGO_INCREMENTAL=0 RUSTFLAGS='-Cinstrument-coverage' RUSTDOCFLAGS='-Cinstrument-coverage' LLVM_PROFILE_FILE='cov/cargo-test-%p-%m.profraw'"
|
||||
grcov-binary := "--binary-path ./target/coverage/deps/"
|
||||
grcov-ignore := "--ignore-not-existing --ignore '../*' --ignore \"/*\" --ignore 'target/*'"
|
||||
cov:
|
||||
rm -rf target/coverage/html || true
|
||||
{{covfig}} time cargo test -j4 --workspace --exclude jack --profile coverage
|
||||
{{covfig}} time grcov . --binary-path ./target/coverage/deps/ -s . -t html --ignore-not-existing --ignore '../*' --ignore "/*" --ignore 'target/*' -o target/coverage/html
|
||||
{{covfig}} time grcov . -s . {{grcov-binary}} {{grcov-ignore}} -t html -o target/coverage/html
|
||||
cov-md:
|
||||
{{covfig}} time cargo test -j4 --workspace --exclude jack --profile coverage
|
||||
{{covfig}} time grcov . -s . {{grcov-binary}} {{grcov-ignore}} -t markdown
|
||||
llcov:
|
||||
time cargo llvm-cov --workspace --exclude jack --profile coverage --no-report
|
||||
time cargo llvm-cov --workspace --exclude jack --profile coverage --no-report --doc
|
||||
|
|
|
@ -109,19 +109,32 @@ pub const fn to_digit (c: char) -> Result<usize, ParseError> {
|
|||
})
|
||||
}
|
||||
#[cfg(test)] mod test_token_iter {
|
||||
use proptest::prelude::*;
|
||||
proptest! {
|
||||
#[test] fn proptest_source_iter (
|
||||
source in "\\PC*"
|
||||
) {
|
||||
let mut iter = crate::SourceIter::new(&source);
|
||||
//let _ = iter.next();
|
||||
}
|
||||
#[test] fn proptest_token_iter (
|
||||
source in "\\PC*"
|
||||
) {
|
||||
let mut iter = crate::TokenIter::new(&source);
|
||||
//let _ = iter.next();
|
||||
}
|
||||
use super::*;
|
||||
//use proptest::prelude::*;
|
||||
//proptest! {
|
||||
//#[test] fn proptest_source_iter (
|
||||
//source in "\\PC*"
|
||||
//) {
|
||||
//let mut iter = crate::SourceIter::new(&source);
|
||||
////let _ = iter.next();
|
||||
//}
|
||||
//#[test] fn proptest_token_iter (
|
||||
//source in "\\PC*"
|
||||
//) {
|
||||
//let mut iter = crate::TokenIter::new(&source);
|
||||
////let _ = iter.next();
|
||||
//}
|
||||
//}
|
||||
#[test] fn test_iters () {
|
||||
let mut iter = crate::SourceIter::new(&":foo :bar");
|
||||
let _ = iter.next();
|
||||
let mut iter = crate::TokenIter::new(&":foo :bar");
|
||||
let _ = iter.next();
|
||||
}
|
||||
#[test] fn test_num () {
|
||||
let digit = to_digit('0');
|
||||
let digit = to_digit('x');
|
||||
let number = to_number(&"123");
|
||||
let number = to_number(&"12asdf3");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -279,3 +279,28 @@ impl Command<MidiEditor> for MidiEditCommand {
|
|||
////// TODO: kpat!(Char('/')) => // toggle 3plet
|
||||
////// TODO: kpat!(Char('?')) => // toggle dotted
|
||||
//});
|
||||
|
||||
#[cfg(test)] #[test] fn test_midi_edit () {
|
||||
let mut editor = MidiEditor {
|
||||
mode: PianoHorizontal::new(Some(&Arc::new(RwLock::new(MidiClip::stop_all())))),
|
||||
size: Default::default(),
|
||||
keys: Default::default(),
|
||||
};
|
||||
let _ = editor.put_note(true);
|
||||
let _ = editor.put_note(false);
|
||||
let _ = editor.clip_status();
|
||||
let _ = editor.edit_status();
|
||||
struct TestEditorHost(Option<MidiEditor>);
|
||||
has_editor!(|self: TestEditorHost|{
|
||||
editor = self.0;
|
||||
editor_w = 0;
|
||||
editor_h = 0;
|
||||
is_editing = false;
|
||||
});
|
||||
let mut host = TestEditorHost(Some(editor));
|
||||
let _ = host.editor();
|
||||
let _ = host.editor_mut();
|
||||
let _ = host.is_editing();
|
||||
let _ = host.editor_w();
|
||||
let _ = host.editor_h();
|
||||
}
|
||||
|
|
|
@ -62,3 +62,18 @@ impl NoteRange for MidiRangeModel {
|
|||
fn note_lo (&self) -> &AtomicUsize { &self.note_lo }
|
||||
fn note_axis (&self) -> &AtomicUsize { &self.note_axis }
|
||||
}
|
||||
|
||||
#[cfg(test)] #[test] fn test_midi_range () {
|
||||
let model = MidiRangeModel::from((1, false));
|
||||
|
||||
let _ = model.time_len();
|
||||
let _ = model.time_zoom();
|
||||
let _ = model.time_lock();
|
||||
let _ = model.time_start();
|
||||
let _ = model.time_axis();
|
||||
let _ = model.time_end();
|
||||
|
||||
let _ = model.note_lo();
|
||||
let _ = model.note_axis();
|
||||
let _ = model.note_hi();
|
||||
}
|
||||
|
|
|
@ -104,9 +104,10 @@ impl PianoHorizontal {
|
|||
match event {
|
||||
MidiMessage::NoteOn { key, .. } => {
|
||||
let note = key.as_int() as usize;
|
||||
let cell = buf.get_mut(x, note).unwrap();
|
||||
cell.set_char('█');
|
||||
cell.set_style(style);
|
||||
if let Some(cell) = buf.get_mut(x, note) {
|
||||
cell.set_char('█');
|
||||
cell.set_style(style);
|
||||
}
|
||||
notes_on[note] = true
|
||||
},
|
||||
MidiMessage::NoteOff { key, .. } => {
|
||||
|
|
Loading…
Reference in a new issue