Пример #1
0
        public void TestWriteSamplesToWaveFile()
        {
            using (var memoryStream = new MemoryStream())
            {
                const int             Mono   = 1;
                Mock <WaveFileWriter> writer = new Mock <WaveFileWriter>(
                    MockBehavior.Strict, memoryStream, WaveFormat.CreateIeeeFloatWaveFormat(SampleRate, Mono));
                naudioFactory.Setup(factory => factory.GetWriter("path-to-audio-file", SampleRate, Mono)).Returns(
                    writer.Object);
                const int SongLengthInFloats = 16;
                float[]   samples            = TestUtilities.GenerateRandomFloatArray(SongLengthInFloats);
                writer.Setup(w => w.Close());

                naudioService.WriteSamplesToWaveFile("path-to-audio-file", samples, SampleRate);

                var readSamples = GetWrittenSamplesInStream(memoryStream, SongLengthInFloats);
                AssertArraysAreEqual(samples, readSamples);
            }
        }