public async Task SampleConfiguration()
        {
            var services = await RabbitSampleConfig.CreateAndStartServices();

            var context = services.GetRequiredService <IApplicationContext>();

            TestSampleConfiguration(context, 2);
        }
        public async Task NoRabbitAdminConfiguration()
        {
            var excep = await Assert.ThrowsAsync <InvalidOperationException>(() => RabbitSampleConfig.CreateAndStartServices(typeof(FullBean)));

            Assert.Contains("rabbitAdmin", excep.Message);
        }
        public async Task InvalidPriorityConfiguration()
        {
            var excep = await Assert.ThrowsAsync <InvalidOperationException>(() => RabbitSampleConfig.CreateAndStartServices(typeof(InvalidPriorityBean)));

            Assert.Contains("NotANumber", excep.Message);
        }
        public async Task UnknownFactory()
        {
            var excep = await Assert.ThrowsAsync <InvalidOperationException>(() => RabbitSampleConfig.CreateAndStartServices(typeof(CustomBean)));

            Assert.Contains("customFactory", excep.Message);
        }