public UsageModelOptionsControl(Lifetime lifetime, OptionsSettingsSmartContext ctx, KaVEISettingsStore settingsStore, IActionExecutor actionExecutor, DataContexts dataContexts, IMessageBoxCreator messageBoxCreator) { _messageBoxCreator = messageBoxCreator; _lifetime = lifetime; _settingsStore = settingsStore; _actionExecutor = actionExecutor; _dataContexts = dataContexts; InitializeComponent(); _modelStoreSettings = settingsStore.GetSettings <ModelStoreSettings>(); DataContext = new UsageModelOptionsViewModel { ModelStoreSettings = _modelStoreSettings }; if (ctx != null) { // Binding to ModelStorePath ctx.SetBinding( lifetime, (ModelStoreSettings s) => s.ModelStorePath, ModelStorePathTextBox, TextBox.TextProperty); } }
public void ShouldUpdateBasePathOnceSettingChanges() { var settings = new ModelStoreSettings(); var settingsStoreMock = new Mock <ISettingsStore>(); settingsStoreMock.Setup(s => s.GetSettings <ModelStoreSettings>()).Returns(settings); var sut = new InjectablePBNRecommenderStore( Mock.Of <IIoUtils>(), settingsStoreMock.Object, new TypePathUtil()); Assert.AreEqual(settings.ModelStorePath, sut.BasePath); settings.ModelStorePath = @"C:\new\path"; settingsStoreMock.Raise( s => s.SettingsChanged += null, new SettingsChangedEventArgs(typeof(ModelStoreSettings))); Assert.AreEqual(settings.ModelStorePath, sut.BasePath); }