public async Task UpdateSettingsAsync(TwitterSigninSettings settings)
        {
            if (settings == null)
            {
                throw new ArgumentNullException(nameof(settings));
            }
            var container = await _siteService.LoadSiteSettingsAsync();

            container.Alter <TwitterSigninSettings>(nameof(TwitterSigninSettings), aspect =>
            {
                aspect.CallbackPath = settings.CallbackPath;
            });
            await _siteService.UpdateSiteSettingsAsync(container);
        }
Exemplo n.º 2
0
        public IEnumerable <ValidationResult> ValidateSettings(TwitterSigninSettings settings)
        {
            if (settings == null)
            {
                throw new ArgumentNullException(nameof(settings));
            }

            if (string.IsNullOrWhiteSpace(settings.ConsumerKey))
            {
                yield return(new ValidationResult(T["ConsumerKey is required"], new string[] { nameof(settings.ConsumerKey) }));
            }

            if (string.IsNullOrWhiteSpace(settings.ConsumerSecret))
            {
                yield return(new ValidationResult(T["ConsumerSecret is required"], new string[] { nameof(settings.ConsumerSecret) }));
            }
        }
Exemplo n.º 3
0
        public TwitterClientTests()
        {
            mockFakeHttpMessageHandler = new Mock <FakeHttpMessageHandler>()
            {
                CallBase = true
            };

            var fakeDataProtector = new FakeDataProtector();
            var settings          = new TwitterSettings
            {
                AccessToken       = "370773112-GmHxMAgYyLbNEtIKZeRNFsMKPR9EyMZeS9weJAEb",
                AccessTokenSecret = "LswwdoUaIvS8ltyTt5jkRh4J50vUPVVHtR2YPi5kE",
                ConsumerKey       = "xvz1evFS4wEEPTGEFPHBog",
                ConsumerSecret    = "kAcSOqF21Fu85e7zjz7ZN2U4ZRhfV3WpwPAoE3Z7kBw"
            };

            settings.AccessTokenSecret = fakeDataProtector.Protect(settings.AccessTokenSecret);
            settings.ConsumerSecret    = fakeDataProtector.Protect(settings.ConsumerSecret);

            var signinSettings = new TwitterSigninSettings
            {
                CallbackPath = null
            };

            mockSiteService = Mock.Of <ISiteService>(ss =>
                                                     ss.GetSiteSettingsAsync() == Task.FromResult(
                                                         Mock.Of <ISite>(s => s.Properties == JObject.FromObject(new { TwitterSettings = settings, TwitterSignInSettings = signinSettings }))
                                                         )
                                                     );

            mockDataProtectionProvider = Mock.Of <IDataProtectionProvider>(dpp =>
                                                                           dpp.CreateProtector(It.IsAny <string>()) == fakeDataProtector
                                                                           );

            var ticks = 13186229580000000 + 621355968000000000;

            mockHttpMessageHandler = new Mock <TwitterClientMessageHandler>(
                Mock.Of <IClock>(i => i.UtcNow == new DateTime(ticks)),
                mockSiteService, mockDataProtectionProvider);
        }