Esempio n. 1
0
        public async Task RunAsync(IRestContext context)
        {
            ICustomSettingsApi settingsApi = context.Factory.CreateUserCustomSettingsApi();

            // Setting some preferences
            UserPreferences preferences = new UserPreferences
            {
                flag   = true,
                array  = new[] { "a", "b", "c" },
                entity = new UserPreferences.Entity {
                    rank = 4, role = "user"
                }
            };

            if (await settingsApi.SetCustomSettingAsync("preferences", preferences))
            {
                Console.WriteLine("Created custom settings: preferences");
            }

            // Retrieving custom settings names
            IEnumerable <string> names = await settingsApi.GetCustomSettingsAsync();

            string flatList = string.Join(", ", names);

            Console.WriteLine("Retrieved available setting names: [{0}]", flatList);

            // Retrieving preferences back
            UserPreferences instance = await settingsApi.GetCustomSettingAsync <UserPreferences>("preferences");

            Console.WriteLine("Retrieved preferences back:");
            Console.WriteLine("\tpreferences.flag={0}, preferences.entity.rank={1}", instance.flag, instance.entity.rank);
        }
Esempio n. 2
0
        public void ShouldDeleteCustomSettingAsync()
        {
            // Arrange
            ICustomSettingsApi settingsApi = CreateSettingsApi();

            // Act
            bool ok = settingsApi.DeleteCustomSettingAsync("preferences").Result;

            // Assert
            ok.ShouldBe(true);
        }
Esempio n. 3
0
        public void ShouldGetCustomSettingsAsync()
        {
            // Arrange
            ICustomSettingsApi settingsApi = CreateSettingsApi();

            // Act
            IEnumerable <string> names = settingsApi.GetCustomSettingsAsync().Result;

            // Assert
            names.Single().ShouldBe("preferences");
        }
Esempio n. 4
0
        public void ShouldGetCustomSettingsAsync()
        {
            // Arrange
            ICustomSettingsApi settingsApi = CreateSettingsApi();

            // Act
            IEnumerable<string> names = settingsApi.GetCustomSettingsAsync().Result.Records.Select(x => x.Name);

            // Assert
            names.ShouldContain("preferences");
        }
Esempio n. 5
0
        public void ShouldSetCustomSettingAsync()
        {
            // Arrange
            ICustomSettingsApi settingsApi = CreateSettingsApi();
            UserPreferences    preferences = CreateUserPreferences();

            // Act
            bool ok = settingsApi.SetCustomSettingAsync("preferences", preferences).Result;

            // Assert
            ok.ShouldBe(true);
        }
        public void ShouldCreateUserCustomSettingsApi()
        {
            // Arrange
            HttpHeaders     headers = new HttpHeaders();
            IServiceFactory factory = new ServiceFactory(Mock.Of <IHttpAddress>(), Mock.Of <IHttpFacade>(), Mock.Of <IContentSerializer>(), headers);

            // Act
            ICustomSettingsApi api = factory.CreateUserCustomSettingsApi();

            // Assert
            api.ShouldNotBe(null);
        }
Esempio n. 7
0
        public void ShouldDeleteCustomSettingAsync()
        {
            // Arrange
            ICustomSettingsApi settingsApi = CreateSettingsApi();

            // Act
            CustomResponse settings = settingsApi.DeleteCustomSettingAsync("Language").Result;

            // Assert
            settings.Name.ShouldBe("Language");

            Should.Throw<ArgumentNullException>(() => settingsApi.DeleteCustomSettingAsync(null));
        }
Esempio n. 8
0
        public void ShouldGetCustomSettingAsync()
        {
            // Arrange
            ICustomSettingsApi settingsApi = CreateSettingsApi();

            // Act
            CustomResponse setting = settingsApi.GetCustomSettingAsync("Language").Result;

            // Assert
            setting.Value.ShouldBe("en-us");

            Should.Throw<ArgumentNullException>(() => settingsApi.GetCustomSettingAsync(null));
        }
Esempio n. 9
0
        public void ShouldGetCustomSettingAsync()
        {
            // Arrange
            ICustomSettingsApi settingsApi = CreateSettingsApi();

            // Act
            UserPreferences setting = settingsApi.GetCustomSettingAsync <UserPreferences>("preferences").Result;

            // Assert
            setting.flag.ShouldBe(true);
            setting.array.Length.ShouldBe(3);
            setting.entity.rank.ShouldBe(4);
            setting.entity.role.ShouldBe("user");
        }
Esempio n. 10
0
        public void ShouldSetCustomSettingAsync()
        {
            // Arrange
            ICustomSettingsApi settingsApi = CreateSettingsApi();
            List<CustomRequest> userSettings = CreateUserSettings();

            // Act
            bool ok = settingsApi.SetCustomSettingsAsync(userSettings).Result.Records.Any();

            // Assert
            ok.ShouldBe(true);

            Should.Throw<ArgumentNullException>(() => settingsApi.SetCustomSettingsAsync(null));
        }
Esempio n. 11
0
        public void ShouldUpdateCustomSettingsAsync()
        {
            // Arrange
            ICustomSettingsApi settingsApi = CreateSettingsApi();
            List<CustomRequest> userSettings = CreateUserSettings();

            // Act
            IEnumerable<CustomResponse> settings = settingsApi.UpdateCustomSettingsAsync(userSettings).Result.Records.ToList();

            // Assert
            settings.Count().ShouldBe(2);
            settings.First().Name.ShouldBe("Language");

            Should.Throw<ArgumentNullException>(() => settingsApi.UpdateCustomSettingsAsync(null));
        }
Esempio n. 12
0
        public void ShouldUpdateCustomSettingAsync()
        {
            // Arrange
            ICustomSettingsApi settingsApi = CreateSettingsApi();
            CustomRequest userSetting = CreateUserSettings().First();

            // Act
            CustomResponse setting = settingsApi.UpdateCustomSettingAsync("Language", userSetting).Result;

            // Assert
            setting.Name.ShouldBe("Language");

            Should.Throw<ArgumentNullException>(() => settingsApi.UpdateCustomSettingAsync(null, userSetting));
            Should.Throw<ArgumentNullException>(() => settingsApi.UpdateCustomSettingAsync("Language", null));
        }
        public async Task RunAsync(IRestContext context)
        {
            ICustomSettingsApi settingsApi = context.Factory.CreateUserCustomSettingsApi();

            // Setting some preferences
            List <CustomRequest> customSettings = new List <CustomRequest>
            {
                new CustomRequest
                {
                    Name  = "Language",
                    Value = "en-us"
                },
                new CustomRequest
                {
                    Name  = "TimeZone",
                    Value = "ET"
                }
            };

            if ((await settingsApi.SetCustomSettingsAsync(customSettings)).Records.Any())
            {
                Console.WriteLine("Created custom settings: preferences");
            }

            // Retrieving custom settings names
            IEnumerable <string> names = (await settingsApi.GetCustomSettingsAsync()).Records.Select(x => x.Name);
            string flatList            = string.Join(", ", names);

            Console.WriteLine("Retrieved available setting names: [{0}]", flatList);

            // Retrieving preferences back
            CustomResponse custom = await settingsApi.GetCustomSettingAsync("Language");

            Console.WriteLine("Retrieved preferences back:");
            Console.WriteLine("\tName={0}, Value={1}", "Language", custom.Value);

            // Deleting preferences
            await settingsApi.DeleteCustomSettingAsync("Language");

            Console.WriteLine("Deleted Language preferences!");
            await settingsApi.DeleteCustomSettingAsync("TimeZone");

            Console.WriteLine("Deleted TimeZone preferences!");
        }