public async Task indicates_not_active_if_parameter_is_not_on_a_list()
        {
            var activator = new UserActivatorBuilder()
                            .WithRuntimeParameters(new Dictionary <string, object>()
            {
                { "user", "anhotheruser;dotnetuser;user" }
            })
                            .WithActiveUser("why?")
                            .Build();

            (await activator.IsActiveAsync("feature")).Should().Be(false);
        }
        public async Task not_be_case_sensitive()
        {
            var activator = new UserActivatorBuilder()
                            .WithRuntimeParameters(new Dictionary <string, object>()
            {
                { "user", "dotnetuser" }
            })
                            .WithActiveUser("DoTnEtUsEr")
                            .Build();

            (await activator.IsActiveAsync("feature")).Should().Be(true);
        }
        public async Task indicates_not_active_if_parameter_is_not_configured()
        {
            var activator = new UserActivatorBuilder()
                            .WithRuntimeParameters(new Dictionary <string, object>()
            {
                { "user", null }
            })
                            .WithActiveUser("DoTnEtUsEr")
                            .Build();

            (await activator.IsActiveAsync("feature")).Should().Be(false);
        }
        public async Task indicates_whether_activator_is_not_active()
        {
            var activator = new UserActivatorBuilder()
                            .WithRuntimeParameters(new Dictionary <string, object>()
            {
                { "user", "dotnetuser" }
            })
                            .WithActiveUser("anonimous")
                            .Build();

            (await activator.IsActiveAsync("feature")).Should().Be(false);
        }
        public void use_descriptor_with_activator_name_equals_to_activator_type_name()
        {
            var activator = new UserActivatorBuilder()
                            .WithRuntimeParameters(new Dictionary <string, object>()
            {
                { "user", "anhotheruser;dotnetuser;user" }
            })
                            .WithActiveUser("why?")
                            .Build();

            var typeName = typeof(UserActivator).Name;

            activator.Descriptors
            .ToList()
            .ForEach(d => d.ActivatorName.Should().BeEquivalentTo(typeName));
        }