示例#1
0
        public void AudioListenerFftIsNotZero()
        {
            var audioListener = new AudioListenerMockWithCounter(40); //40Hz sample frequence

            audioListener.Start();

            Thread.Sleep(100);

            float[] fft1 = audioListener.FftData;

            Thread.Sleep(100);

            float[] fft2 = audioListener.FftData;

            audioListener.Stop();

            bool allEqual = true;

            for (int i = 0; i < fft1.Length; i++)
            {
                if (fft1[i] != fft2[i])
                {
                    allEqual = false;
                    break;
                }
            }

            Assert.IsFalse(allEqual);
        }
示例#2
0
        public void AudioListenerSampleFrequenceWorks()
        {
            var audioListener = new AudioListenerMockWithCounter(40); //40Hz sample frequence

            audioListener.Start();

            Thread.Sleep(1000); //sleep 1 second (waiting for 25 samples: 25x 40 = 1000)

            audioListener.Stop();

            Thread.Sleep(10);

            Assert.IsTrue((audioListener.NumberOfSamples >= 38) || (audioListener.NumberOfSamples <= 40),
                          "Returned " + audioListener.NumberOfSamples.ToString());
        }
示例#3
0
        [TestCase(30)] //sample frequence in Hz
        public void TestTheSampleFrequence(int pSampleFrequence)
        {
            float period        = 1000.0f / (float)pSampleFrequence;
            int   twentyPeriods = (int)(100.0f * period);

            var audioListenerMock = new AudioListenerMockWithCounter(pSampleFrequence);

            audioListenerMock.Start();

            Thread.Sleep(twentyPeriods);

            audioListenerMock.Stop();

            //We gave +/- 5% of tolerance (should be equal 100)
            Assert.IsTrue(95 <= audioListenerMock.NumberOfSamples, audioListenerMock.NumberOfSamples.ToString());
            Assert.IsTrue(audioListenerMock.NumberOfSamples <= 105, audioListenerMock.NumberOfSamples.ToString());
        }
示例#4
0
        public void AudioListenerStartAndStop()
        {
            var audioListener = new AudioListenerMockWithCounter(40); //40Hz sample frequence

            audioListener.Start();

            Assert.IsTrue(audioListener.AudioDeviceInitialized);
            Assert.IsFalse(audioListener.Stopped);

            Thread.Sleep(100);

            Assert.IsTrue(audioListener.WorkerThread.IsAlive);

            audioListener.Stop();

            Assert.IsFalse(audioListener.WorkerThread.IsAlive);
            Assert.IsTrue(audioListener.Stopped);
        }