public void CardTopUpNonThreadSafe() { var card = CashCard.CreateNonThreadSafeMock(0); Action <int> deduct = x => { card.TopUp(10); }; Parallel.For(0, 10000, deduct); Assert.AreNotEqual(100000, card.Balance); }