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)); }