Update old unit tests
This commit is contained in:
parent
9d9e9d211e
commit
ecf3b8a4ff
@ -369,7 +369,7 @@ mod tests {
|
|||||||
Some(0)
|
Some(0)
|
||||||
);
|
);
|
||||||
|
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Artist);
|
assert_eq!(app.selection.active, Category::Artist);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.album.state.list.selected(), Some(0));
|
||||||
@ -387,7 +387,7 @@ mod tests {
|
|||||||
Some(0)
|
Some(0)
|
||||||
);
|
);
|
||||||
|
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Album);
|
assert_eq!(app.selection.active, Category::Album);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), Some(1));
|
assert_eq!(app.selection.artist.album.state.list.selected(), Some(1));
|
||||||
@ -405,7 +405,7 @@ mod tests {
|
|||||||
Some(0)
|
Some(0)
|
||||||
);
|
);
|
||||||
|
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Track);
|
assert_eq!(app.selection.active, Category::Track);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), Some(1));
|
assert_eq!(app.selection.artist.album.state.list.selected(), Some(1));
|
||||||
@ -423,7 +423,7 @@ mod tests {
|
|||||||
Some(1)
|
Some(1)
|
||||||
);
|
);
|
||||||
|
|
||||||
app.decrement_selection();
|
app.decrement_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Track);
|
assert_eq!(app.selection.active, Category::Track);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), Some(1));
|
assert_eq!(app.selection.artist.album.state.list.selected(), Some(1));
|
||||||
@ -432,7 +432,7 @@ mod tests {
|
|||||||
Some(0)
|
Some(0)
|
||||||
);
|
);
|
||||||
|
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
app.decrement_category();
|
app.decrement_category();
|
||||||
assert_eq!(app.selection.active, Category::Album);
|
assert_eq!(app.selection.active, Category::Album);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
||||||
@ -442,7 +442,7 @@ mod tests {
|
|||||||
Some(1)
|
Some(1)
|
||||||
);
|
);
|
||||||
|
|
||||||
app.decrement_selection();
|
app.decrement_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Album);
|
assert_eq!(app.selection.active, Category::Album);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.album.state.list.selected(), Some(0));
|
||||||
@ -451,7 +451,7 @@ mod tests {
|
|||||||
Some(0)
|
Some(0)
|
||||||
);
|
);
|
||||||
|
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
app.decrement_category();
|
app.decrement_category();
|
||||||
assert_eq!(app.selection.active, Category::Artist);
|
assert_eq!(app.selection.active, Category::Artist);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(1));
|
||||||
@ -461,7 +461,7 @@ mod tests {
|
|||||||
Some(0)
|
Some(0)
|
||||||
);
|
);
|
||||||
|
|
||||||
app.decrement_selection();
|
app.decrement_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Artist);
|
assert_eq!(app.selection.active, Category::Artist);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.album.state.list.selected(), Some(0));
|
||||||
@ -471,9 +471,9 @@ mod tests {
|
|||||||
);
|
);
|
||||||
|
|
||||||
app.increment_category();
|
app.increment_category();
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
app.decrement_category();
|
app.decrement_category();
|
||||||
app.decrement_selection();
|
app.decrement_selection(Delta::Line);
|
||||||
app.decrement_category();
|
app.decrement_category();
|
||||||
assert_eq!(app.selection.active, Category::Artist);
|
assert_eq!(app.selection.active, Category::Artist);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
||||||
@ -500,13 +500,13 @@ mod tests {
|
|||||||
app.increment_category();
|
app.increment_category();
|
||||||
app.increment_category();
|
app.increment_category();
|
||||||
|
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Track);
|
assert_eq!(app.selection.active, Category::Track);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.album.state.list.selected(), Some(0));
|
||||||
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
||||||
|
|
||||||
app.decrement_selection();
|
app.decrement_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Track);
|
assert_eq!(app.selection.active, Category::Track);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.album.state.list.selected(), Some(0));
|
||||||
@ -528,13 +528,13 @@ mod tests {
|
|||||||
|
|
||||||
app.increment_category();
|
app.increment_category();
|
||||||
|
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Album);
|
assert_eq!(app.selection.active, Category::Album);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
||||||
|
|
||||||
app.decrement_selection();
|
app.decrement_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Album);
|
assert_eq!(app.selection.active, Category::Album);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
||||||
@ -542,13 +542,13 @@ mod tests {
|
|||||||
|
|
||||||
app.increment_category();
|
app.increment_category();
|
||||||
|
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Track);
|
assert_eq!(app.selection.active, Category::Track);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
||||||
|
|
||||||
app.decrement_selection();
|
app.decrement_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Track);
|
assert_eq!(app.selection.active, Category::Track);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
assert_eq!(app.selection.artist.state.list.selected(), Some(0));
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
||||||
@ -565,13 +565,13 @@ mod tests {
|
|||||||
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
||||||
|
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Artist);
|
assert_eq!(app.selection.active, Category::Artist);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), None);
|
assert_eq!(app.selection.artist.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
||||||
|
|
||||||
app.decrement_selection();
|
app.decrement_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Artist);
|
assert_eq!(app.selection.active, Category::Artist);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), None);
|
assert_eq!(app.selection.artist.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
||||||
@ -579,13 +579,13 @@ mod tests {
|
|||||||
|
|
||||||
app.increment_category();
|
app.increment_category();
|
||||||
|
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Album);
|
assert_eq!(app.selection.active, Category::Album);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), None);
|
assert_eq!(app.selection.artist.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
||||||
|
|
||||||
app.decrement_selection();
|
app.decrement_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Album);
|
assert_eq!(app.selection.active, Category::Album);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), None);
|
assert_eq!(app.selection.artist.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
||||||
@ -593,13 +593,13 @@ mod tests {
|
|||||||
|
|
||||||
app.increment_category();
|
app.increment_category();
|
||||||
|
|
||||||
app.increment_selection();
|
app.increment_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Track);
|
assert_eq!(app.selection.active, Category::Track);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), None);
|
assert_eq!(app.selection.artist.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.track.state.list.selected(), None);
|
||||||
|
|
||||||
app.decrement_selection();
|
app.decrement_selection(Delta::Line);
|
||||||
assert_eq!(app.selection.active, Category::Track);
|
assert_eq!(app.selection.active, Category::Track);
|
||||||
assert_eq!(app.selection.artist.state.list.selected(), None);
|
assert_eq!(app.selection.artist.state.list.selected(), None);
|
||||||
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
assert_eq!(app.selection.artist.album.state.list.selected(), None);
|
||||||
|
@ -452,17 +452,17 @@ mod tests {
|
|||||||
let mut sel = TrackSelection::initialise(tracks);
|
let mut sel = TrackSelection::initialise(tracks);
|
||||||
assert_eq!(sel.state.list.selected(), Some(0));
|
assert_eq!(sel.state.list.selected(), Some(0));
|
||||||
|
|
||||||
sel.decrement(tracks);
|
sel.decrement(tracks, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(0));
|
assert_eq!(sel.state.list.selected(), Some(0));
|
||||||
|
|
||||||
sel.increment(tracks);
|
sel.increment(tracks, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(1));
|
assert_eq!(sel.state.list.selected(), Some(1));
|
||||||
|
|
||||||
sel.decrement(tracks);
|
sel.decrement(tracks, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(0));
|
assert_eq!(sel.state.list.selected(), Some(0));
|
||||||
|
|
||||||
for _ in 0..(tracks.len() + 5) {
|
for _ in 0..(tracks.len() + 5) {
|
||||||
sel.increment(tracks);
|
sel.increment(tracks, Delta::Line);
|
||||||
}
|
}
|
||||||
assert_eq!(sel.state.list.selected(), Some(tracks.len() - 1));
|
assert_eq!(sel.state.list.selected(), Some(tracks.len() - 1));
|
||||||
|
|
||||||
@ -474,7 +474,7 @@ mod tests {
|
|||||||
|
|
||||||
// Re-initialise out-of-bounds.
|
// Re-initialise out-of-bounds.
|
||||||
let mut expected = sel.clone();
|
let mut expected = sel.clone();
|
||||||
expected.decrement(tracks);
|
expected.decrement(tracks, Delta::Line);
|
||||||
let active_track = ActiveTrack::get(tracks, &sel);
|
let active_track = ActiveTrack::get(tracks, &sel);
|
||||||
sel.reinitialise(&tracks[..(tracks.len() - 1)], active_track);
|
sel.reinitialise(&tracks[..(tracks.len() - 1)], active_track);
|
||||||
assert_eq!(sel, expected);
|
assert_eq!(sel, expected);
|
||||||
@ -484,13 +484,6 @@ mod tests {
|
|||||||
let active_track = ActiveTrack::get(tracks, &sel);
|
let active_track = ActiveTrack::get(tracks, &sel);
|
||||||
sel.reinitialise(&[], active_track);
|
sel.reinitialise(&[], active_track);
|
||||||
assert_eq!(sel, expected);
|
assert_eq!(sel, expected);
|
||||||
|
|
||||||
// Artifical test case to verify upper limit.
|
|
||||||
sel.state.list.select(Some(std::usize::MAX));
|
|
||||||
assert_eq!(sel.state.list.selected(), Some(std::usize::MAX));
|
|
||||||
|
|
||||||
sel.increment(&[]);
|
|
||||||
assert_eq!(sel.state.list.selected(), Some(std::usize::MAX));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
@ -505,35 +498,35 @@ mod tests {
|
|||||||
assert_eq!(sel.state.list.selected(), Some(0));
|
assert_eq!(sel.state.list.selected(), Some(0));
|
||||||
assert_eq!(sel.track.state.list.selected(), Some(0));
|
assert_eq!(sel.track.state.list.selected(), Some(0));
|
||||||
|
|
||||||
sel.increment_track(albums);
|
sel.increment_track(albums, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(0));
|
assert_eq!(sel.state.list.selected(), Some(0));
|
||||||
assert_eq!(sel.track.state.list.selected(), Some(1));
|
assert_eq!(sel.track.state.list.selected(), Some(1));
|
||||||
|
|
||||||
// Verify that decrement that doesn't change index does not reset track.
|
// Verify that decrement that doesn't change index does not reset track.
|
||||||
sel.decrement(albums);
|
sel.decrement(albums, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(0));
|
assert_eq!(sel.state.list.selected(), Some(0));
|
||||||
assert_eq!(sel.track.state.list.selected(), Some(1));
|
assert_eq!(sel.track.state.list.selected(), Some(1));
|
||||||
|
|
||||||
sel.increment(albums);
|
sel.increment(albums, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(1));
|
assert_eq!(sel.state.list.selected(), Some(1));
|
||||||
assert_eq!(sel.track.state.list.selected(), Some(0));
|
assert_eq!(sel.track.state.list.selected(), Some(0));
|
||||||
|
|
||||||
sel.decrement(albums);
|
sel.decrement(albums, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(0));
|
assert_eq!(sel.state.list.selected(), Some(0));
|
||||||
assert_eq!(sel.track.state.list.selected(), Some(0));
|
assert_eq!(sel.track.state.list.selected(), Some(0));
|
||||||
|
|
||||||
for _ in 0..(albums.len() + 5) {
|
for _ in 0..(albums.len() + 5) {
|
||||||
sel.increment(albums);
|
sel.increment(albums, Delta::Line);
|
||||||
}
|
}
|
||||||
assert_eq!(sel.state.list.selected(), Some(albums.len() - 1));
|
assert_eq!(sel.state.list.selected(), Some(albums.len() - 1));
|
||||||
assert_eq!(sel.track.state.list.selected(), Some(0));
|
assert_eq!(sel.track.state.list.selected(), Some(0));
|
||||||
|
|
||||||
sel.increment_track(albums);
|
sel.increment_track(albums, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(albums.len() - 1));
|
assert_eq!(sel.state.list.selected(), Some(albums.len() - 1));
|
||||||
assert_eq!(sel.track.state.list.selected(), Some(1));
|
assert_eq!(sel.track.state.list.selected(), Some(1));
|
||||||
|
|
||||||
// Verify that increment that doesn't change index does not reset track.
|
// Verify that increment that doesn't change index does not reset track.
|
||||||
sel.increment(albums);
|
sel.increment(albums, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(albums.len() - 1));
|
assert_eq!(sel.state.list.selected(), Some(albums.len() - 1));
|
||||||
assert_eq!(sel.track.state.list.selected(), Some(1));
|
assert_eq!(sel.track.state.list.selected(), Some(1));
|
||||||
|
|
||||||
@ -545,7 +538,7 @@ mod tests {
|
|||||||
|
|
||||||
// Re-initialise out-of-bounds.
|
// Re-initialise out-of-bounds.
|
||||||
let mut expected = sel.clone();
|
let mut expected = sel.clone();
|
||||||
expected.decrement(albums);
|
expected.decrement(albums, Delta::Line);
|
||||||
let active_album = ActiveAlbum::get(albums, &sel);
|
let active_album = ActiveAlbum::get(albums, &sel);
|
||||||
sel.reinitialise(&albums[..(albums.len() - 1)], active_album);
|
sel.reinitialise(&albums[..(albums.len() - 1)], active_album);
|
||||||
assert_eq!(sel, expected);
|
assert_eq!(sel, expected);
|
||||||
@ -555,16 +548,6 @@ mod tests {
|
|||||||
let active_album = ActiveAlbum::get(albums, &sel);
|
let active_album = ActiveAlbum::get(albums, &sel);
|
||||||
sel.reinitialise(&[], active_album);
|
sel.reinitialise(&[], active_album);
|
||||||
assert_eq!(sel, expected);
|
assert_eq!(sel, expected);
|
||||||
|
|
||||||
// Artifical test case to verify upper limit.
|
|
||||||
sel.state.list.select(Some(std::usize::MAX));
|
|
||||||
sel.track.state.list.select(Some(1));
|
|
||||||
assert_eq!(sel.state.list.selected(), Some(std::usize::MAX));
|
|
||||||
assert_eq!(sel.track.state.list.selected(), Some(1));
|
|
||||||
|
|
||||||
sel.increment(&[]);
|
|
||||||
assert_eq!(sel.state.list.selected(), Some(std::usize::MAX));
|
|
||||||
assert_eq!(sel.track.state.list.selected(), Some(1));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
@ -579,35 +562,35 @@ mod tests {
|
|||||||
assert_eq!(sel.state.list.selected(), Some(0));
|
assert_eq!(sel.state.list.selected(), Some(0));
|
||||||
assert_eq!(sel.album.state.list.selected(), Some(0));
|
assert_eq!(sel.album.state.list.selected(), Some(0));
|
||||||
|
|
||||||
sel.increment_album(artists);
|
sel.increment_album(artists, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(0));
|
assert_eq!(sel.state.list.selected(), Some(0));
|
||||||
assert_eq!(sel.album.state.list.selected(), Some(1));
|
assert_eq!(sel.album.state.list.selected(), Some(1));
|
||||||
|
|
||||||
// Verify that decrement that doesn't change index does not reset album.
|
// Verify that decrement that doesn't change index does not reset album.
|
||||||
sel.decrement(artists);
|
sel.decrement(artists, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(0));
|
assert_eq!(sel.state.list.selected(), Some(0));
|
||||||
assert_eq!(sel.album.state.list.selected(), Some(1));
|
assert_eq!(sel.album.state.list.selected(), Some(1));
|
||||||
|
|
||||||
sel.increment(artists);
|
sel.increment(artists, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(1));
|
assert_eq!(sel.state.list.selected(), Some(1));
|
||||||
assert_eq!(sel.album.state.list.selected(), Some(0));
|
assert_eq!(sel.album.state.list.selected(), Some(0));
|
||||||
|
|
||||||
sel.decrement(artists);
|
sel.decrement(artists, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(0));
|
assert_eq!(sel.state.list.selected(), Some(0));
|
||||||
assert_eq!(sel.album.state.list.selected(), Some(0));
|
assert_eq!(sel.album.state.list.selected(), Some(0));
|
||||||
|
|
||||||
for _ in 0..(artists.len() + 5) {
|
for _ in 0..(artists.len() + 5) {
|
||||||
sel.increment(artists);
|
sel.increment(artists, Delta::Line);
|
||||||
}
|
}
|
||||||
assert_eq!(sel.state.list.selected(), Some(artists.len() - 1));
|
assert_eq!(sel.state.list.selected(), Some(artists.len() - 1));
|
||||||
assert_eq!(sel.album.state.list.selected(), Some(0));
|
assert_eq!(sel.album.state.list.selected(), Some(0));
|
||||||
|
|
||||||
sel.increment_album(artists);
|
sel.increment_album(artists, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(artists.len() - 1));
|
assert_eq!(sel.state.list.selected(), Some(artists.len() - 1));
|
||||||
assert_eq!(sel.album.state.list.selected(), Some(1));
|
assert_eq!(sel.album.state.list.selected(), Some(1));
|
||||||
|
|
||||||
// Verify that increment that doesn't change index does not reset album.
|
// Verify that increment that doesn't change index does not reset album.
|
||||||
sel.increment(artists);
|
sel.increment(artists, Delta::Line);
|
||||||
assert_eq!(sel.state.list.selected(), Some(artists.len() - 1));
|
assert_eq!(sel.state.list.selected(), Some(artists.len() - 1));
|
||||||
assert_eq!(sel.album.state.list.selected(), Some(1));
|
assert_eq!(sel.album.state.list.selected(), Some(1));
|
||||||
|
|
||||||
@ -619,7 +602,7 @@ mod tests {
|
|||||||
|
|
||||||
// Re-initialise out-of-bounds.
|
// Re-initialise out-of-bounds.
|
||||||
let mut expected = sel.clone();
|
let mut expected = sel.clone();
|
||||||
expected.decrement(artists);
|
expected.decrement(artists, Delta::Line);
|
||||||
let active_artist = ActiveArtist::get(artists, &sel);
|
let active_artist = ActiveArtist::get(artists, &sel);
|
||||||
sel.reinitialise(&artists[..(artists.len() - 1)], active_artist);
|
sel.reinitialise(&artists[..(artists.len() - 1)], active_artist);
|
||||||
assert_eq!(sel, expected);
|
assert_eq!(sel, expected);
|
||||||
@ -629,15 +612,5 @@ mod tests {
|
|||||||
let active_artist = ActiveArtist::get(artists, &sel);
|
let active_artist = ActiveArtist::get(artists, &sel);
|
||||||
sel.reinitialise(&[], active_artist);
|
sel.reinitialise(&[], active_artist);
|
||||||
assert_eq!(sel, expected);
|
assert_eq!(sel, expected);
|
||||||
|
|
||||||
// Artifical test case to verify upper limit.
|
|
||||||
sel.state.list.select(Some(std::usize::MAX));
|
|
||||||
sel.album.state.list.select(Some(1));
|
|
||||||
assert_eq!(sel.state.list.selected(), Some(std::usize::MAX));
|
|
||||||
assert_eq!(sel.album.state.list.selected(), Some(1));
|
|
||||||
|
|
||||||
sel.increment(&[]);
|
|
||||||
assert_eq!(sel.state.list.selected(), Some(std::usize::MAX));
|
|
||||||
assert_eq!(sel.album.state.list.selected(), Some(1));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -513,7 +513,11 @@ impl IUi for Ui {
|
|||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use crate::tui::{app::app::AppPublic, testmod::COLLECTION, tests::terminal};
|
use crate::tui::{
|
||||||
|
app::{app::AppPublic, selection::Delta},
|
||||||
|
testmod::COLLECTION,
|
||||||
|
tests::terminal,
|
||||||
|
};
|
||||||
|
|
||||||
use super::*;
|
use super::*;
|
||||||
|
|
||||||
@ -567,14 +571,14 @@ mod tests {
|
|||||||
// Change the track (which has a different track format).
|
// Change the track (which has a different track format).
|
||||||
selection.increment_category();
|
selection.increment_category();
|
||||||
selection.increment_category();
|
selection.increment_category();
|
||||||
selection.increment_selection(artists);
|
selection.increment_selection(artists, Delta::Line);
|
||||||
|
|
||||||
draw_test_suite(artists, &mut selection);
|
draw_test_suite(artists, &mut selection);
|
||||||
|
|
||||||
// Change the artist (which has a multi-link entry).
|
// Change the artist (which has a multi-link entry).
|
||||||
selection.decrement_category();
|
selection.decrement_category();
|
||||||
selection.decrement_category();
|
selection.decrement_category();
|
||||||
selection.increment_selection(artists);
|
selection.increment_selection(artists, Delta::Line);
|
||||||
|
|
||||||
draw_test_suite(artists, &mut selection);
|
draw_test_suite(artists, &mut selection);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user