예제 #1
0
        public void SetUp()
        {
            _mutableTypeFactoryMock          = MockRepository.GenerateStrictMock <IMutableTypeFactory>();
            _complexSerializationEnablerMock = MockRepository.GenerateStrictMock <IComplexSerializationEnabler>();
            _participantStateMock            = MockRepository.GenerateStrictMock <IParticipantState>();

            _requestedType = typeof(RequestedType);
            _typeID        = AssembledTypeIDObjectMother.Create(_requestedType);
            _assembledType = typeof(AssembledType);
        }
예제 #2
0
        public TypeAssembler(
            string participantConfigurationID,
            IEnumerable <IParticipant> participants,
            IMutableTypeFactory mutableTypeFactory,
            IComplexSerializationEnabler complexSerializationEnabler)
        {
            ArgumentUtility.CheckNotNullOrEmpty("participantConfigurationID", participantConfigurationID);
            ArgumentUtility.CheckNotNull("participants", participants);
            ArgumentUtility.CheckNotNull("mutableTypeFactory", mutableTypeFactory);
            ArgumentUtility.CheckNotNull("complexSerializationEnabler", complexSerializationEnabler);


            _participantConfigurationID = participantConfigurationID;
            _participants                = participants.ToList().AsReadOnly();
            _mutableTypeFactory          = mutableTypeFactory;
            _complexSerializationEnabler = complexSerializationEnabler;

            _assembledTypeIdentifierProvider = new AssembledTypeIdentifierProvider(_participants);
        }
예제 #3
0
        private TypeAssembler CreateTypeAssembler(
            IMutableTypeFactory mutableTypeFactory = null,
            IAssembledTypeIdentifierProvider assembledTypeIdentifierProvider = null,
            IComplexSerializationEnabler complexSerializationEnabler         = null,
            string configurationId = "id",
            params IParticipant[] participants)
        {
            mutableTypeFactory = mutableTypeFactory ?? _mutableTypeFactoryMock.Object;
            // Do not fix up assembledTypeIdentifierProvider.
            complexSerializationEnabler = complexSerializationEnabler ?? _complexSerializationEnablerMock.Object;

            var typeAssembler = new TypeAssembler(configurationId, participants.AsOneTime(), mutableTypeFactory, complexSerializationEnabler);

            if (assembledTypeIdentifierProvider != null)
            {
                PrivateInvoke.SetNonPublicField(typeAssembler, "_assembledTypeIdentifierProvider", assembledTypeIdentifierProvider);
            }

            return(typeAssembler);
        }