Example #1
0
        public void CreateCacheKey_SucceedsWith_NullApiKey()
        {
            // Arrange
            Uri uri = new Uri("http://someuri");

            // Act
            string key = MobileAppsExtensionConfigProvider.GetCacheKey(uri, null);

            // Assert
            Assert.Equal(uri.ToString() + ";", key);
        }
Example #2
0
        public void CreateCacheKey_MatchesUri_DifferentCasing()
        {
            // Arrange
            Uri uri1 = new Uri("http://someuri");
            Uri uri2 = new Uri("http://SOMEURI");

            string apiKey = "api_key";

            // Act
            string key1 = MobileAppsExtensionConfigProvider.GetCacheKey(uri1, apiKey);
            string key2 = MobileAppsExtensionConfigProvider.GetCacheKey(uri2, apiKey);

            // Assert
            Assert.Equal(key1, key2);
        }
Example #3
0
        public async Task CreateMobileServiceClient_AddsHandler(string apiKey, bool expectHeader)
        {
            // Arrange
            var handler = new TestHandler();
            var factory = new TestMobileServiceClientFactory(handler);
            var client  = MobileAppsExtensionConfigProvider.CreateMobileServiceClient(factory, new Uri("https://someuri/"), apiKey);
            var table   = client.GetTable("FakeTable");

            // Act
            await table.ReadAsync(string.Empty);

            // Assert
            bool foundHeader = handler.IssuedRequest.Headers.TryGetValues(MobileServiceApiKeyHandler.ZumoApiKeyHeaderName, out IEnumerable <string> values);

            Assert.Equal(expectHeader, foundHeader);
            if (expectHeader)
            {
                Assert.Equal("my_api_key", values.Single());
            }
        }
Example #4
0
        private MobileAppsExtensionConfigProvider CreateConfigProvider(string configApiKey, Uri configMobileAppUri, IMobileServiceClientFactory clientFactory = null)
        {
            var options = new MobileAppsOptions
            {
                ApiKey       = configApiKey,
                MobileAppUri = configMobileAppUri
            };

            var nameResolver = new TestNameResolver();

            nameResolver.Values[MobileAppsExtensionConfigProvider.AzureWebJobsMobileAppApiKeyName] = "Default";
            nameResolver.Values[MobileAppsExtensionConfigProvider.AzureWebJobsMobileAppUriName]    = "https://default";
            nameResolver.Values["Attribute"] = "ResolvedAttribute";

            clientFactory = clientFactory ?? new DefaultMobileServiceClientFactory();
            var configProvider = new MobileAppsExtensionConfigProvider(new OptionsWrapper <MobileAppsOptions>(options), clientFactory, nameResolver);
            var context        = TestHelpers.CreateExtensionConfigContext(nameResolver);

            configProvider.Initialize(context);

            return(configProvider);
        }
 public MobileTableCollectorBuilder(MobileAppsExtensionConfigProvider configProvider)
 {
     _configProvider = configProvider;
 }
Example #6
0
 public MobileTablePocoTableBuilder(MobileAppsExtensionConfigProvider configProvider)
 {
     _configProvider = configProvider;
 }
Example #7
0
 public MobileTableClientBuilder(MobileAppsExtensionConfigProvider configProvider)
 {
     _configProvider = configProvider;
 }