コード例 #1
0
            public void InitializeContext()
            {
                var uriService = Mock.Of <IUriReferenceService>(
                    u => u.ResolveUri <IInstanceBase>(It.IsAny <Uri>()) == Mock.Of <IProduct>(p =>
                                                                                              p.ToolkitInfo.Identifier == "ToolkitId"));

                var serviceProvider = Mock.Get(this.store.ServiceProvider);

                serviceProvider.Setup(s => s.GetService(typeof(IPatternManager))).Returns(
                    Mock.Of <IPatternManager>(p => p.InstalledToolkits == new List <IInstalledToolkitInfo>()));

                ExtensionPointSchema hosted = null;

                this.store.TransactionManager.DoWithinTransaction(() =>
                {
                    var patternModel          = this.store.ElementFactory.CreateElement <PatternModelSchema>();
                    var patternSchema         = patternModel.CreatePatternSchema() as PatternSchema;
                    patternSchema.PatternLink = "patternmanager://foo";
                    patternSchema.UriService  = uriService;

                    var view  = patternSchema.Create <ViewSchema>();
                    view.Name = "View1";
                    this.extensionPointSchema      = view.Create <ExtensionPointSchema>();
                    this.extensionPointSchema.Name = "ep1";

                    hosted      = view.Create <ExtensionPointSchema>();
                    hosted.Name = "hostedExtensionPoint";

                    var prop1            = hosted.Create <PropertySchema>();
                    prop1.Name           = "PartiallyCustomizable";
                    prop1.Type           = "System.String";
                    prop1.IsCustomizable = CustomizationState.True;
                    prop1.EnsurePolicyAndDefaultSettings();
                    prop1.Policy.Settings[0].Value = false;

                    var prop2            = hosted.Create <PropertySchema>();
                    prop2.Name           = "FullyCustomizable";
                    prop2.Type           = "System.String";
                    prop2.IsCustomizable = CustomizationState.False;
                    prop2.EnsurePolicyAndDefaultSettings();
                });

                this.hostedExtensionPoint = hosted as IExtensionPointSchema;

                this.userMessageService = new Mock <IUserMessageService>();

                var defaultDescriptor = TypeDescriptor.CreateProperty(typeof(ExtensionPointSchema),
                                                                      Reflector <ExtensionPointSchema> .GetPropertyName(e => e.RepresentedExtensionPointId), typeof(string), null);

                this.descriptor = new HostedExtensionPointPropertyDescriptor(
                    defaultDescriptor,
                    this.extensionPointSchema,
                    this.userMessageService.Object);
            }
            public void InitializeContext()
            {
                var serviceProvider = Mock.Get(this.store.ServiceProvider);

                serviceProvider.Setup(s => s.GetService(typeof(IPatternManager))).Returns(
                    Mock.Of <IPatternManager>(p => p.InstalledToolkits == new List <IInstalledToolkitInfo>()));

                ExtensionPointSchema extensionPoint1 = null;
                ExtensionPointSchema extensionPoint2 = null;

                this.store.TransactionManager.DoWithinTransaction(() =>
                {
                    var patternModel = this.store.ElementFactory.CreateElement <PatternModelSchema>();

                    var uriService = Mock.Of <IUriReferenceService>(
                        u => u.ResolveUri <IInstanceBase>(It.IsAny <Uri>()) == Mock.Of <IProduct>(p =>
                                                                                                  p.ToolkitInfo.Identifier == "ToolkitId"));

                    this.patternSchema             = patternModel.CreatePatternSchema() as PatternSchema;
                    this.patternSchema.PatternLink = "patternmanager://foo";
                    this.patternSchema.UriService  = uriService;

                    var view  = patternSchema.Create <ViewSchema>();
                    view.Name = "View1";

                    extensionPoint1      = view.Create <ExtensionPointSchema>();
                    extensionPoint1.Name = "ep1";

                    var prop1  = extensionPoint1.Create <PropertySchema>();
                    prop1.Name = "ContractProperty1";
                    prop1.Type = typeof(string).Name;

                    extensionPoint2      = view.Create <ExtensionPointSchema>();
                    extensionPoint2.Name = "ep2";

                    var prop2  = extensionPoint2.Create <PropertySchema>();
                    prop2.Name = "ContractProperty1";
                    prop2.Type = typeof(double).Name;
                });

                this.extensionPoints = new List <IExtensionPointSchema> {
                    extensionPoint1, extensionPoint2
                };

                this.descriptor = new ProvidedExtensionPointsPropertyDescriptor(
                    this.patternSchema,
                    extensionPoints,
                    new Mock <IUserMessageService>().Object,
                    "ImplementedExtensionPointsRaw",
                    string.Empty);
            }