public MainWindow() { InitializeComponent(); this.fonts.ItemsSource = Fonts.SystemFontFamilies; this.fonts.SelectedItem = FontFamily; this.fontSize.Text = this.fontSizeConverter.ConvertToString(FontSize); this.locale.ItemsSource = CultureInfo.GetCultures(CultureTypes.AllCultures); this.locale.SelectedItem = CultureInfo.CurrentUICulture; var resources = new MockResourceProvider(); this.panel.TargetPlatform = new TargetPlatform(new MockEditorProvider(resources), resources, new MockBindingProvider()) { SupportsCustomExpressions = true, SupportsMaterialDesign = true, SupportsBrushOpacity = false, GroupedTypes = new Dictionary <Type, string> { { typeof(CommonBrush), "Brush" } }, AutoExpandGroups = new[] { "ReadWrite" } }; Application.Current.Resources.MergedDictionaries.Add(DarkTheme); #if USE_VS_ICONS this.panel.Resources.MergedDictionaries.Add(new ResourceDictionary { Source = new Uri("pack://application:,,,/ProppyIcons.xaml", UriKind.RelativeOrAbsolute) }); #endif }
public async Task AdaptiveDialogBotExceptionWhenNoResource() { // Arrange var logger = NullLogger <AdaptiveDialogBot> .Instance; var storage = new MemoryStorage(); var conversationState = new ConversationState(storage); var userState = new UserState(storage); var skillConversationIdFactory = new SkillConversationIdFactory(storage); var languagePolicy = new LanguagePolicy("en-US"); var resourceExplorer = new ResourceExplorer(); var resourceProvider = new MockResourceProvider(resourceExplorer); resourceExplorer.AddResourceProvider(resourceProvider); var botFrameworkClientMock = new Mock <BotFrameworkClient>(); var botFrameworkAuthenticationMock = new Mock <BotFrameworkAuthentication>(); botFrameworkAuthenticationMock.Setup(bfa => bfa.CreateBotFrameworkClient()).Returns(botFrameworkClientMock.Object); // The test dialog being used here happens to not send anything so we only need to mock the type. var adapterMock = new Mock <BotAdapter>(); // ChannelId and Conversation.Id are required for ConversationState and // ChannelId and From.Id are required for UserState. var activity = new Activity { ChannelId = "test-channel", Conversation = new ConversationAccount { Id = "test-conversation-id" }, From = new ChannelAccount { Id = "test-id" } }; var turnContext = new TurnContext(adapterMock.Object, activity); // Act var bot = new AdaptiveDialogBot( "main.dialog", "main.lg", resourceExplorer, conversationState, userState, skillConversationIdFactory, languagePolicy, botFrameworkAuthenticationMock.Object, logger: logger); var exception = await Record.ExceptionAsync(() => ((IBot)bot).OnTurnAsync(turnContext, CancellationToken.None)); // Assert Assert.NotNull(exception); Assert.IsType <InvalidOperationException>(exception); }
public void AdaptiveDialogBot_ShouldNotThrowOnNullLogger() { // Arrange var logger = NullLogger <AdaptiveDialogBot> .Instance; var storage = new MemoryStorage(); var conversationState = new ConversationState(storage); var userState = new UserState(storage); var skillConversationIdFactory = new SkillConversationIdFactory(storage); var languagePolicy = new LanguagePolicy("en-US"); var resourceExplorer = new ResourceExplorer(); var resourceProvider = new MockResourceProvider(resourceExplorer); resourceExplorer.AddResourceProvider(resourceProvider); var botFrameworkClientMock = new Mock <BotFrameworkClient>(); var botFrameworkAuthenticationMock = new Mock <BotFrameworkAuthentication>(); botFrameworkAuthenticationMock.Setup(bfa => bfa.CreateBotFrameworkClient()).Returns(botFrameworkClientMock.Object); // The test dialog being used here happens to not send anything so we only need to mock the type. var adapterMock = new Mock <BotAdapter>(); // ChannelId and Conversation.Id are required for ConversationState and // ChannelId and From.Id are required for UserState. var activity = new Activity { ChannelId = "test-channel", Conversation = new ConversationAccount { Id = "test-conversation-id" }, From = new ChannelAccount { Id = "test-id" } }; var turnContext = new TurnContext(adapterMock.Object, activity); var telemetryClient = new NullBotTelemetryClient(); new AdaptiveDialogBot( "main.dialog", "main.lg", resourceExplorer, conversationState, userState, skillConversationIdFactory, languagePolicy, botFrameworkAuthenticationMock.Object, telemetryClient, logger: null); }
public override void ViewDidLoad() { base.ViewDidLoad(); // Do any additional setup after loading the view. var resourceProvider = new MockResourceProvider(); PropertyPanel.TargetPlatform = new TargetPlatform(new MockEditorProvider(resourceProvider), resourceProvider, new MockBindingProvider()) { SupportsCustomExpressions = true, SupportsMaterialDesign = true, SupportsBrushOpacity = false, GroupedTypes = new Dictionary <Type, string> { { typeof(CommonBrush), "Brush" } }, AutoExpandGroups = new [] { "ReadWrite" } }; }
public void Initialize() { IRandomNumberGenerator rng = new Salsa20(new byte[32]); IResourceProvider resourceProvider = new MockResourceProvider(); this.parentEntry = new MockEntry(); this.parentEntry.Fields.Add( new KdbxString(ExistingFieldKey, ExistingFieldValue, rng, ExistingFieldProtected) ); MethodInfo testMethod = GetType().GetRuntimeMethod( TestContext.TestName, new Type[0] ); DetailsForAttribute specAttr = testMethod.GetCustomAttribute <DetailsForAttribute>(); if (specAttr == null) { return; } else { if (specAttr.IsNew) { this.viewModel = new FieldEditorViewModel(rng, resourceProvider); } else { this.originalString = new KdbxString(EditedFieldKey, EditedFieldValue, rng, EditedFieldProtected); this.parentEntry.Fields.Add(this.originalString); this.viewModel = new FieldEditorViewModel(this.originalString, resourceProvider); } } }
public async Task AdaptiveDialogBotTurnState() { // Arrange var logger = NullLogger <AdaptiveDialogBot> .Instance; var storage = new MemoryStorage(); var conversationState = new ConversationState(storage); var userState = new UserState(storage); var skillConversationIdFactory = new SkillConversationIdFactory(storage); var languagePolicy = new LanguagePolicy("en-US"); var resourceExplorer = new ResourceExplorer(); var resourceProvider = new MockResourceProvider(resourceExplorer); resourceProvider.Add("main.dialog", new MockResource("{ \"$kind\": \"Microsoft.AdaptiveDialog\" }")); resourceExplorer.AddResourceProvider(resourceProvider); var botFrameworkClientMock = new Mock <BotFrameworkClient>(); var botFrameworkAuthenticationMock = new Mock <BotFrameworkAuthentication>(); botFrameworkAuthenticationMock.Setup(bfa => bfa.CreateBotFrameworkClient()).Returns(botFrameworkClientMock.Object); // The test dialog being used here happens to not send anything so we only need to mock the type. var adapterMock = new Mock <BotAdapter>(); // ChannelId and Conversation.Id are required for ConversationState and // ChannelId and From.Id are required for UserState. var activity = new Activity { ChannelId = "test-channel", Conversation = new ConversationAccount { Id = "test-conversation-id" }, From = new ChannelAccount { Id = "test-id" } }; var turnContext = new TurnContext(adapterMock.Object, activity); var telemetryClient = new NullBotTelemetryClient(); // Act var bot = new AdaptiveDialogBot( "main.dialog", "main.lg", resourceExplorer, conversationState, userState, skillConversationIdFactory, languagePolicy, botFrameworkAuthenticationMock.Object, telemetryClient, logger: logger); await bot.OnTurnAsync(turnContext, CancellationToken.None); // Assert Assert.NotNull(turnContext.TurnState.Get <BotFrameworkClient>()); Assert.NotNull(turnContext.TurnState.Get <SkillConversationIdFactoryBase>()); Assert.NotNull(turnContext.TurnState.Get <ConversationState>()); Assert.NotNull(turnContext.TurnState.Get <UserState>()); Assert.NotNull(turnContext.TurnState.Get <ResourceExplorer>()); Assert.NotNull(turnContext.TurnState.Get <LanguageGenerator>()); Assert.NotNull(turnContext.TurnState.Get <LanguageGeneratorManager>()); Assert.NotNull(turnContext.TurnState.Get <LanguagePolicy>()); }
public async Task AdaptiveDialogBotSetTestOptions() { // Arrange var logger = NullLogger <AdaptiveDialogBot> .Instance; var storage = new MemoryStorage(); var conversationState = new ConversationState(storage); var userState = new UserState(storage); var skillConversationIdFactory = new SkillConversationIdFactory(storage); var languagePolicy = new LanguagePolicy("en-US"); var resourceExplorer = new ResourceExplorer(); var resourceProvider = new MockResourceProvider(resourceExplorer); resourceProvider.Add("main.dialog", new MockResource("{ \"$kind\": \"Microsoft.AdaptiveDialog\" }")); resourceExplorer.AddResourceProvider(resourceProvider); var botFrameworkClientMock = new Mock <BotFrameworkClient>(); var botFrameworkAuthenticationMock = new Mock <BotFrameworkAuthentication>(); botFrameworkAuthenticationMock.Setup(bfa => bfa.CreateBotFrameworkClient()).Returns(botFrameworkClientMock.Object); // The test dialog being used here happens to not send anything so we only need to mock the type. var adapterMock = new Mock <BotAdapter>(); // Type "event" and Name of "SetTestOptions" should store Value in ConversationState. // ChannelId and Conversation.Id are required for ConversationState and // ChannelId and From.Id are required for UserState. var activity = new Activity { Type = "event", Name = "SetTestOptions", ChannelId = "test-channel", Conversation = new ConversationAccount { Id = "test-conversation-id" }, From = new ChannelAccount { Id = "test-id" }, Value = new JObject { { "randomSeed", new JValue(123) }, { "randomValue", new JValue(456) } } }; var turnContext = new TurnContext(adapterMock.Object, activity); var telemetryClient = new NullBotTelemetryClient(); // Act var bot = new AdaptiveDialogBot( "main.dialog", "main.lg", resourceExplorer, conversationState, userState, skillConversationIdFactory, languagePolicy, botFrameworkAuthenticationMock.Object, telemetryClient, logger: logger); await bot.OnTurnAsync(turnContext, CancellationToken.None); // Assert TestOptions are in Conversation var testOptionsAccessor = conversationState.CreateProperty <JObject>("TestOptions"); Assert.Equal(123, (await testOptionsAccessor.GetAsync(turnContext)).GetValue("randomSeed")); Assert.Equal(456, (await testOptionsAccessor.GetAsync(turnContext)).GetValue("randomValue")); }