public RelationshipAddingTicketEditorDecorator(IEditsTicket wrappedInstance,
                                                IConvertsAddRelationshipRequestsToTicketRelationships relationshipFactory)
 {
     if (relationshipFactory == null)
     {
         throw new ArgumentNullException(nameof(relationshipFactory));
     }
     if (wrappedInstance == null)
     {
         throw new ArgumentNullException(nameof(wrappedInstance));
     }
     this.wrappedInstance     = wrappedInstance;
     this.relationshipFactory = relationshipFactory;
 }
Пример #2
0
        public void CreateTicket_adds_relationships_with_null_secondary_ticket_as_secondary_relationships([Frozen, CreatesATicket] ICreatesTicket wrappedInstance,
                                                                                                          [Frozen] IConvertsAddRelationshipRequestsToTicketRelationships relationshipFactory,
                                                                                                          TicketRelationship relationship,
                                                                                                          Ticket relatedTicket,
                                                                                                          CreateTicketRequest request,
                                                                                                          AddRelationshipRequest relationshipRequest,
                                                                                                          RelationshipPopulatingTicketFactoryDecorator sut)
        {
            // Arrange
            request.RelationshipsToAdd.Add(relationshipRequest);
            Mock.Get(relationshipFactory)
            .Setup(x => x.Convert(It.IsAny <IEnumerable <AddRelationshipRequest> >()))
            .Returns(new [] { relationship });
            relationship.PrimaryTicket   = relatedTicket;
            relationship.SecondaryTicket = null;

            // Act
            var result = sut.CreateTicket(request);

            // Assert
            Assert.That(result?.PrimaryRelationships, Does.Not.Contains(relationship));
            Assert.That(result?.SecondaryRelationships, Contains.Item(relationship));
        }