public void Inherit_And_Modify_A_BaseView(ViewType viewType, bool attribute, string platformName) { var platform = GetPlatform(platformName); ModelViewInheritanceUpdater.Disabled = true; var models = GetModels(viewType, attribute, platform); var application = platform.NewApplication <ModelViewInheritanceModule>(); var module = CreateModelViewIneritanceModule(viewType, attribute, application, false); var testModule1 = new TestModule1 { DiffsStore = new StringModelStore(models[0]) }; var baseBoTypes = new[] { typeof(ABaseMvi), typeof(TagMvi) }; var boTypes = new[] { typeof(AMvi), typeof(FileMvi) }; testModule1.AdditionalExportedTypes.AddRange(baseBoTypes); var testModule2 = new TestModule2 { DiffsStore = new StringModelStore(models[1]) }; testModule2.AdditionalExportedTypes.AddRange(boTypes); application.SetupDefaults(module, testModule1, testModule2, new TestModule3 { DiffsStore = new StringModelStore(models[2]) }); var inheritAndModifyBaseView = new InheritAndModifyBaseView(application, viewType, attribute); inheritAndModifyBaseView.Verify(application.Model); application.Dispose(); }
private string[] GetModels(ViewType viewType, bool attribute, Platform platform) { var application = platform.NewApplication <ModelViewInheritanceModule>(); CreateModelViewIneritanceModule(viewType, attribute, application); var inheritAndModifyBaseView = new InheritAndModifyBaseView(application, viewType, attribute); var models = inheritAndModifyBaseView.GetModels().ToArray(); ModelViewInheritanceUpdater.Disabled = false; application.Dispose(); return(models); }