Ejemplo n.º 1
0
        public void ShowCard_ShouldDecryptCardAndShowOrder()
        {
            const int    orderId    = 10;
            const string privateKey = "abcd";

            var order = new Order
            {
                Card = new Card
                {
                    CardType = new CardType {
                        Id = 1
                    },
                    Holder      = "Jon Anderson",
                    IssueNumber = "",
                    StartMonth  = 1,
                    StartYear   = 2004,
                    ExpiryMonth = 3,
                    ExpiryYear  = 2010
                }
            };

            order.Card.SetEncryptedNumber("asldfkjaslfjdslsdjkfjflkdjdlsakj");
            order.Card.SetEncryptedSecurityCode("asldkfjsadlfjdskjfdlkd");

            orderRepository.Stub(or => or.GetById(orderId)).Return(order);

            orderController.ShowCard(orderId, privateKey)
            .ReturnsViewResult()
            .ForView("Item")
            .WithModel <ShopViewData>()
            .AssertAreEqual(order.Card.Number, vd => vd.Card.Number)
            .AssertAreEqual(order.Card.ExpiryYear, vd => vd.Card.ExpiryYear);

            encryptionService.AssertWasCalled(es => es.DecryptCard(Arg <Card> .Is.Anything));
        }