Esempio n. 1
0
        public void Should_not_stack_if_switchers_throw_on_dispose()
        {
            var tasks = new List <Task>();

            for (var i = 0; i < 2; i++)
            {
                tasks.Add(Task.Run(() =>
                {
                    try
                    {
                        using (var env = new FakeHostEnvironment())
                        {
                            var disposable = Substitute.For <IDisposable>();
                            disposable.When(x => x.Dispose()).Throw <Exception>();
                            env.Switchers.Add(disposable);
                        }
                    }
                    catch
                    {
                        // ignored
                    }
                }));
            }

            // Act && Assert
            Task.WaitAll(tasks.ToArray(), TimeSpan.FromSeconds(2)).Should().BeTrue();
        }
Esempio n. 2
0
 public void Should_initialize_config_map_path()
 {
     // Act
     using (var fakeEnvironment = new FakeHostEnvironment())
     {
         // Assert
         fakeEnvironment.Switchers.Should().Contain(
             x =>
             x is PrivateFieldSwitcher &&
             ((PrivateFieldSwitcher)x).FieldName == "_configMapPath" &&
             ((PrivateFieldSwitcher)x).NewValue is FakeConfigMapPath);
     }
 }
 public void Should_initialize_config_map_path()
 {
     // Act
     using (var fakeEnvironment = new FakeHostEnvironment())
     {
         // Assert
         fakeEnvironment.Switchers.Should().Contain(
             x =>
                 x is PrivateFieldSwitcher
                 && ((PrivateFieldSwitcher)x).FieldName == "_configMapPath"
                 && ((PrivateFieldSwitcher)x).NewValue is FakeConfigMapPath);
     }
 }
Esempio n. 4
0
 public void Should_set_appPhisicalPath()
 {
     // Act
     using (var fakeEnvironment = new FakeHostEnvironment())
     {
         // Assert
         fakeEnvironment.Switchers.Should()
         .Contain(
             x =>
             x is PrivateFieldSwitcher &&
             ((PrivateFieldSwitcher)x).FieldName == "_appPhysicalPath" &&
             (string)((PrivateFieldSwitcher)x).NewValue == AppDomain.CurrentDomain.BaseDirectory);
     }
 }
Esempio n. 5
0
 public void Should_initialize_app_domain_data()
 {
     // Act
     using (var fakeEnvironment = new FakeHostEnvironment())
     {
         // Assert
         fakeEnvironment.Switchers.Should()
         .Contain(
             x =>
             x is AppDomainDataSwitcher &&
             (string)((AppDomainDataSwitcher)x).FakeLocalStore[".appPath"][0] == AppDomain.CurrentDomain.BaseDirectory &&
             (string)((AppDomainDataSwitcher)x).FakeLocalStore[".appDomain"][0] == "*" &&
             (string)((AppDomainDataSwitcher)x).FakeLocalStore[".appVPath"][0] == "/");
     }
 }
 public void Should_initialize_app_domain_data()
 {
     // Act
     using (var fakeEnvironment = new FakeHostEnvironment())
     {
         // Assert
         fakeEnvironment.Switchers.Should()
             .Contain(
                 x =>
                 x is AppDomainDataSwitcher
                 && (string)((AppDomainDataSwitcher)x).FakeLocalStore[".appPath"][0] == AppDomain.CurrentDomain.BaseDirectory
                 && (string)((AppDomainDataSwitcher)x).FakeLocalStore[".appDomain"][0] == "*"
                 && (string)((AppDomainDataSwitcher)x).FakeLocalStore[".appVPath"][0] == "/");
     }
 }
Esempio n. 7
0
        public void Should_not_swallow_disposal_exception()
        {
            // Arrange
            Action action = () =>
            {
                // Act
                using (var env = new FakeHostEnvironment())
                {
                    var disposable = Substitute.For <IDisposable>();
                    disposable.When(x => x.Dispose()).Throw <Exception>();
                    env.Switchers.Add(disposable);
                }
            };

            // Assert
            action.ShouldThrow <Exception>();
        }
Esempio n. 8
0
        public async Task be_not_active_if_current_environment_is_not_configured()
        {
            var toggle = Build
                         .Toggle <HostEnvironmentToggle>()
                         .AddParameter(Environments, Production)
                         .Build();

            var feature = Build
                          .Feature(Constants.FeatureName)
                          .AddOne(toggle)
                          .Build();

            var hostEnvironment = new FakeHostEnvironment(Development);

            var active = await new HostEnvironmentToggle(hostEnvironment).IsActiveAsync(
                ToggleExecutionContext.FromToggle(
                    feature.Name,
                    EsquioConstants.DEFAULT_PRODUCT_NAME,
                    EsquioConstants.DEFAULT_DEPLOYMENT_NAME,
                    toggle));

            active.Should().BeFalse();
        }
 public void Should_set_appPhisicalPath()
 {
     // Act
     using (var fakeEnvironment = new FakeHostEnvironment())
     {
         // Assert
         fakeEnvironment.Switchers.Should()
             .Contain(
                 x =>
                 x is PrivateFieldSwitcher
                 && ((PrivateFieldSwitcher)x).FieldName == "_appPhysicalPath"
                 && (string)((PrivateFieldSwitcher)x).NewValue == AppDomain.CurrentDomain.BaseDirectory);
     }
 }