Added tests for channel info

This commit is contained in:
Jamie Hardt
2020-11-27 22:10:01 -08:00
parent 010f261598
commit ac6bd9c1e8

View File

@@ -2,6 +2,7 @@ extern crate bwavfile;
use bwavfile::WaveReader;
use bwavfile::Error;
use bwavfile::{ ChannelMask};
#[test]
fn test_open() {
@@ -116,3 +117,43 @@ fn test_locate_multichannel_read() {
assert_eq!(buffer[0], 0x109422_i32);
assert_eq!(buffer[1], -698901_i32); // 7689707 - 8388608
}
#[test]
fn test_channels_stereo() {
let path = "tests/media/ff_pink.wav";
let mut w = WaveReader::open(path).expect("Failure opening test file");
let channels = w.channels().unwrap();
assert_eq!(channels.len(), 2);
assert_eq!(channels[0].index,0);
assert_eq!(channels[1].index,1);
assert_eq!(channels[0].speaker,ChannelMask::FrontLeft);
assert_eq!(channels[1].speaker,ChannelMask::FrontRight);
}
#[test]
fn test_channels_mono_no_extended() {
let path = "tests/media/audacity_16bit.wav";
let mut w = WaveReader::open(path).expect("Failure opening test file");
let channels = w.channels().unwrap();
assert_eq!(channels.len(), 1);
assert_eq!(channels[0].index,0);
assert_eq!(channels[0].speaker,ChannelMask::FrontCenter);
}
#[test]
fn test_channels_stereo_no_fmt_extended() {
let path = "tests/media/pt_24bit_stereo.wav";
let mut w = WaveReader::open(path).expect("Failure opening test file");
let channels = w.channels().unwrap();
assert_eq!(channels.len(), 2);
assert_eq!(channels[0].index,0);
assert_eq!(channels[1].index,1);
assert_eq!(channels[0].speaker,ChannelMask::FrontLeft);
assert_eq!(channels[1].speaker,ChannelMask::FrontRight);
}