void Init()
        {
            _mixer.SetAllLevelNotificationsEnabled(1);

            if (_fairlightAudioMixerInputs == null)
            {
                var inputs = _mixer.GetFairlightAudioMixerInputs();
                _fairlightAudioMixerInputs = inputs.Select(c => new FairlightAudioMixerInput(c, _mediator)).ToList();
            }
        }
        public void TestSendLevelsCommand()
        {
            var expected = new FairlightMixerSendLevelsCommand();
            var handler  = CommandGenerator.MatchCommand(expected);

            AtemMockServerWrapper.Each(_output, _pool, handler, DeviceTestCases.FairlightMain, helper =>
            {
                IBMDSwitcherFairlightAudioMixer mixer = GetFairlightMixer(helper);
                AtemState stateBefore = helper.Helper.BuildLibState();

                for (int i = 0; i < 5; i++)
                {
                    uint timeBefore = helper.Server.CurrentTime;

                    expected.SendLevels = i % 2 == 1;

                    helper.SendAndWaitForChange(stateBefore, () => { mixer.SetAllLevelNotificationsEnabled(i % 2); });

                    // It should have sent a response, but we dont expect any comparable data
                    Assert.NotEqual(timeBefore, helper.Server.CurrentTime);
                }
            });
        }