public XrmFakedContext()
        {
            MaxRetrieveCount = 5000;

            AttributeMetadataNames = new Dictionary <string, Dictionary <string, string> >();
            Data                    = new Dictionary <string, Dictionary <Guid, Entity> >();
            ExecutionMocks          = new Dictionary <Type, ServiceRequestExecution>();
            OptionSetValuesMetadata = new Dictionary <string, OptionSetMetadata>();

            FakeMessageExecutors = Assembly.GetExecutingAssembly()
                                   .GetTypes()
                                   .Where(t => t.GetInterfaces().Contains(typeof(IFakeMessageExecutor)))
                                   .Select(t => Activator.CreateInstance(t) as IFakeMessageExecutor)
                                   .ToDictionary(t => t.GetResponsibleRequestType(), t => t);

            GenericFakeMessageExecutors = new Dictionary <string, IFakeMessageExecutor>();

            Relationships = new Dictionary <string, XrmFakedRelationship>();

            EntityInitializerService = new DefaultEntityInitializerService();

            AccessRightsRepository = new AccessRightsRepository();

            SystemTimeZone = TimeZoneInfo.Local;
            DateBehaviour  = DefaultDateBehaviour();

            EntityMetadata = new Dictionary <string, EntityMetadata>();

            UsePipelineSimulation = false;
        }
Exemplo n.º 2
0
        public void When_using_default_entity_initialization_level_invoice_detail_init_service_is_not_called()
        {
            XrmFakedContext      context = new XrmFakedContext(); //By default it is using the default setting
            IOrganizationService service = context.GetOrganizationService();
            var fakeService = A.Fake <IEntityInitializerService>();
            var overridenDefaultInitializer = new DefaultEntityInitializerService();

            overridenDefaultInitializer.InitializerServiceDictionary["invoicedetail"] = fakeService;
            context.EntityInitializerService = overridenDefaultInitializer;

            Entity invoiceDetail = new Entity("invoicedetail");

            invoiceDetail.Id = Guid.NewGuid();
            invoiceDetail["ispriceoverridden"] = false;
            context.Initialize(invoiceDetail);

            A.CallTo(() => fakeService.Initialize(A <Entity> ._, A <Guid> ._, A <XrmFakedContext> ._, A <bool> ._)).MustNotHaveHappened();
        }
Exemplo n.º 3
0
        public XrmFakedContext()
        {
            AttributeMetadata = new Dictionary <string, Dictionary <string, string> >();
            Data                    = new Dictionary <string, Dictionary <Guid, Entity> >();
            ExecutionMocks          = new Dictionary <Type, ServiceRequestExecution>();
            OptionSetValuesMetadata = new Dictionary <string, OptionSetMetadata>();

            FakeMessageExecutors = Assembly.GetExecutingAssembly()
                                   .GetTypes()
                                   .Where(t => t.GetInterfaces().Contains(typeof(IFakeMessageExecutor)))
                                   .Select(t => Activator.CreateInstance(t) as IFakeMessageExecutor)
                                   .ToDictionary(t => t.GetResponsibleRequestType(), t => t);

            GenericFakeMessageExecutors = new Dictionary <string, IFakeMessageExecutor>();

            Relationships = new Dictionary <string, XrmFakedRelationship>();

            EntityInitializerService = new DefaultEntityInitializerService();

            AccessRightsRepository = new AccessRightsRepository();
        }