public void Should_correctly_calculate_coefficients_for_even_numbered_order()
        {
            var target = new HighPassFilterFunction();

            var expected = new float[]
            {
                -0.04161178f,
                -0.0429360829f,
                -0.0439831242f,
                -0.0447402224f,
                -0.0451981947f,
                0.954648554f,
                -0.0451981947f,
                -0.0447402224f,
                -0.0439831242f,
                -0.0429360829f,
                -0.04161178f
            };

            var actual = target.CalculateCoefficients(10, 0f, 1000f, 44100);

            CollectionAssert.AreEqual(expected, actual, new FloatComparer());
        }
        public void Should_throw_if_upper_cutoff_frequency_is_negative()
        {
            var target = new HighPassFilterFunction();

            target.CalculateCoefficients(1, 1f, -1f, 1);
        }
        public void Should_throw_if_sample_rate_is_negative()
        {
            var target = new HighPassFilterFunction();

            target.CalculateCoefficients(1, 1f, 1f, -1);
        }
        public void Should_throw_if_filter_order_is_negative()
        {
            var target = new HighPassFilterFunction();

            target.CalculateCoefficients(-1, 1f, 1f, 1);
        }