public void PrepareOAuthUrl() { const ScopeSettings scopeSettings = ScopeSettings.IamTheGod; const AuthDisplayType authDisplayType = AuthDisplayType.Page; var response = Api.OAuth.GetAuthUrl(scopeSettings, authDisplayType); var query = response.Query; var decodedQuery = WebUtility.HtmlDecode(query); Logger.Log(decodedQuery); var parameters = decodedQuery .Substring(1) .Split('&') .Select(i => i.Split('=')) .ToDictionary(i => i[0], i => i[1]); foreach (var parameter in new Dictionary <string, string> { { "display", authDisplayType.ToString().ToLower() }, { "scope", ((int)scopeSettings).ToString().ToLower() }, { "client_id", Constants.OfficialApplicationId.ToString() }, { "response_type", "token" } }) { var actual = parameters[parameter.Key]; var expected = parameter.Value; actual.Should().Be(expected); } }
protected bool PromptToModifyRecipientScope(IUIService uiService, ExchangePropertyPageControl scopeControl) { if (scopeControl == null) { throw new ArgumentNullException("scopeControl"); } using (PropertyPageDialog propertyPageDialog = new PropertyPageDialog(scopeControl)) { ScopeSettings scopeSettings = new ScopeSettings(); scopeSettings.CopyFrom(this.ScopeSettings); scopeControl.Context = new DataContext(new ExchangeDataHandler()); scopeControl.Context.DataHandler.DataSource = scopeSettings; if (uiService.ShowDialog(propertyPageDialog) == DialogResult.OK && scopeSettings.ObjectState == ObjectState.Changed) { this.ScopeSettings.CopyChangesFrom(scopeSettings); this.UpdateText(); return(true); } } return(false); }