示例#1
0
        public void BuildTicketAckAcceptanceTest()
        {
            var ticket = new TicketAck("ticket-" + SR.I1000P, SR.I1000, TicketAckStatus.Rejected, 100, "message");

            Assert.IsNotNull(ticket);
            Assert.AreEqual(ticket.TicketStatus, TicketAckStatus.Rejected);
        }
示例#2
0
        public void BuildTicketAckFromTicketTest()
        {
            var ticketBuilder = _builderFactory.CreateTicketBuilder();
            var senderBuilder = _builderFactory.CreateSenderBuilder().SetBookmakerId(9985).SetLimitId(10).SetCurrency("EUR").SetSenderChannel(SenderChannel.Terminal);

            var ticket = ticketBuilder
                         .SetTicketId("ticket-" + new Random().Next(10000)).SetOddsChange(OddsChangeType.Any)
                         .SetSender(senderBuilder.SetEndCustomer(
                                        _builderFactory.CreateEndCustomerBuilder().SetId("customer-client-" + SR.I1000).SetConfidence(12039203).SetLanguageId("en").Build())
                                    .SetShopId(SR.S1000)
                                    .SetTerminalId(SR.S1000)
                                    .Build())
                         .AddBet(BetBuilder.Create().AddSelectedSystem(1).SetBetId("bet-id-" + SR.I1000).SetBetBonus(SR.I1000).SetStake(92343, StakeType.Total)
                                 .AddSelection(_builderFactory.CreateSelectionBuilder().SetEventId(9691139).SetIdLcoo(324, 1, "", "1").SetOdds(16000).SetBanker(true).Build())
                                 .Build())
                         .BuildTicket();

            var ticketAck = new TicketAck(ticket, TicketAckStatus.Accepted, 100, "message");

            Assert.IsNotNull(ticketAck);
            Assert.IsTrue(ticketAck.Timestamp > DateTime.Today.ToUniversalTime());
            Assert.AreEqual(TicketHelper.MtsTicketVersion, ticketAck.Version);
            Assert.IsTrue(!string.IsNullOrEmpty(ticketAck.TicketId));
            Assert.AreEqual(ticketAck.TicketId, ticket.TicketId);
            Assert.AreEqual(ticket.Sender.BookmakerId, ticketAck.BookmakerId);
        }
示例#3
0
        public void BuildTicketAckTest()
        {
            var ticket = new TicketAck("ticket-" + SR.I1000P, SR.I1000, TicketAckStatus.Accepted, 100, "message");

            Assert.IsNotNull(ticket);
            Assert.IsTrue(ticket.Timestamp > DateTime.Today.ToUniversalTime());
            Assert.AreEqual(TicketHelper.MtsTicketVersion, ticket.Version);
            Assert.IsTrue(!string.IsNullOrEmpty(ticket.TicketId));
        }
示例#4
0
        public void BuildTicketAckDtoFromTicketAckTest()
        {
            var ticket = new TicketAck(SR.S1000, SR.I1000, TicketAckStatus.Rejected, SR.I100, SR.S1000);
            var dto    = new TicketAckMapper().Map(ticket);
            var json   = dto.ToJson();

            var newDto = TicketAckDTO.FromJson(json);

            TicketCompareHelper.Compare(ticket, dto);
            TicketCompareHelper.Compare(ticket, newDto);
        }
        /// <summary>
        /// Acknowledges the specified mark accepted.
        /// </summary>
        /// <param name="markAccepted">if set to <c>true</c> [mark accepted]</param>
        /// <param name="bookmakerId">The sender identifier</param>
        /// <param name="code">The code</param>
        /// <param name="message">The message</param>
        /// <exception cref="NullReferenceException">Missing TicketSender. Can not be null</exception>
        public void Acknowledge(bool markAccepted, int bookmakerId, int code, string message)
        {
            if (_ticketSender == null)
            {
                throw new NullReferenceException("Missing TicketSender. Can not be null.");
            }
            var ticketAck = new TicketAck(TicketId,
                                          bookmakerId,
                                          markAccepted ? TicketAckStatus.Accepted : TicketAckStatus.Rejected,
                                          code,
                                          message);

            _ticketSender.SendTicket(ticketAck);
        }