public void TestProjectConfigManagerWithCustomProjectConfigManager()
        {
            var projectConfigManager = new HttpProjectConfigManager.Builder()
                                       .WithSdkKey("10192104166")
                                       .WithFormat("https://optimizely.com/json/{0}.json")
                                       .WithPollingInterval(TimeSpan.FromMilliseconds(3000))
                                       .WithBlockingTimeoutPeriod(TimeSpan.FromMilliseconds(4500))
                                       .WithStartByDefault()
                                       .WithAccessToken("access-token")
                                       .Build(true);

            var optimizely = OptimizelyFactory.NewDefaultInstance(projectConfigManager);
            var actualProjectConfigManager = optimizely.ProjectConfigManager as HttpProjectConfigManager;
            var actualConfigManagerProps   = new ProjectConfigManagerProps(actualProjectConfigManager);
            var expectedConfigManagerProps = new ProjectConfigManagerProps(projectConfigManager);

            Assert.AreEqual(actualConfigManagerProps, expectedConfigManagerProps);
            optimizely.Dispose();
        }
        public void TestProjectConfigManagerUsingSDKKey()
        {
            var optimizely = OptimizelyFactory.NewDefaultInstance("my-sdk-key");

            // Check values are loaded from app.config or not.
            var projectConfigManager = optimizely.ProjectConfigManager as HttpProjectConfigManager;

            Assert.NotNull(projectConfigManager);

            var actualConfigManagerProps   = new ProjectConfigManagerProps(projectConfigManager);
            var expectedConfigManagerProps = new ProjectConfigManagerProps
            {
                Url             = "https://cdn.optimizely.com/datafiles/my-sdk-key.json",
                LastModified    = "",
                AutoUpdate      = true,
                BlockingTimeout = TimeSpan.FromSeconds(15),
                PollingInterval = TimeSpan.FromMinutes(5)
            };

            Assert.AreEqual(actualConfigManagerProps, expectedConfigManagerProps);
            optimizely.Dispose();
        }
        public void TestOptimizelyInstanceUsingConfigFile()
        {
            var optimizely = OptimizelyFactory.NewDefaultInstance();
            // Check values are loaded from app.config or not.
            var projectConfigManager = optimizely.ProjectConfigManager as HttpProjectConfigManager;

            Assert.NotNull(projectConfigManager);

            var actualConfigManagerProps   = new ProjectConfigManagerProps(projectConfigManager);
            var expectedConfigManagerProps = new ProjectConfigManagerProps
            {
                Url                 = "www.testurl.com",
                LastModified        = "",
                AutoUpdate          = true,
                DatafileAccessToken = "testingtoken123",
                BlockingTimeout     = TimeSpan.FromSeconds(10),
                PollingInterval     = TimeSpan.FromSeconds(2)
            };

            Assert.AreEqual(actualConfigManagerProps, expectedConfigManagerProps);
            optimizely.Dispose();
        }
Beispiel #4
0
        public void TestProjectConfigManagerWithDatafileAccessToken()
        {
            var optimizely = OptimizelyFactory.NewDefaultInstance("my-sdk-key", null, "access-token");

            // Check values are loaded from app.config or not.
            var projectConfigManager = optimizely.ProjectConfigManager as HttpProjectConfigManager;

            Assert.NotNull(projectConfigManager);

            var actualConfigManagerProps   = new ProjectConfigManagerProps(projectConfigManager);
            var expectedConfigManagerProps = new ProjectConfigManagerProps
            {
                Url                 = "https://config.optimizely.com/datafiles/auth/my-sdk-key.json",
                LastModified        = "",
                DatafileAccessToken = "access-token",
                AutoUpdate          = true,
                BlockingTimeout     = TimeSpan.FromSeconds(30),
                PollingInterval     = TimeSpan.FromMilliseconds(2023)
            };

            Assert.AreEqual(actualConfigManagerProps, expectedConfigManagerProps);

            optimizely.Dispose();
        }