예제 #1
0
        public void Constructor_Should_Throw_NullReferenceException_When_Message_Is_Empty()
        {
            //Arrange
            var ticketBuilder = new TicketTestBuilder().WithMessage("");

            //Act
            Action ticketConstruction = () => ticketBuilder.Build();

            //Assert
            ticketConstruction.Should().Throw <NullReferenceException>();
        }
예제 #2
0
        public void Constructor_Should_Construct_Ticket_Properly()
        {
            //Arrange
            var ticketBuilder = new TicketTestBuilder();

            //Act
            var ticket = ticketBuilder.Build();

            //Assert
            ticket.Id.DbId.Should().Be(ticketBuilder.Id.DbId);
            ticket.SchoolId.Value.Should().Be(ticketBuilder.SchoolId.Value);
            ticket.Type.Value.Should().Be(ticketBuilder.Type.Value);
            ticket.Message.Should().Be(ticketBuilder.Message);
        }
예제 #3
0
        public void Handle_RegisterTicket_Should_Call_Create_On_Repository()
        {
            //Arrange
            var ticket           = new TicketTestBuilder().Build();
            var registerTicket   = ProvideSomeRegisterTicket();
            var ticketRepository = Substitute.For <ITicketRepository>();

            ticketRepository.Create(ticket);
            var ticketCommandHandler = new TicketCommandHandler(ticketRepository);

            //Act
            ticketCommandHandler.Handle(registerTicket);

            //Assert
            ticketRepository.Received(1).Create(ticket);
        }