Example #1
0
        public void ちょうどの金額で決済するとお釣りが出ない()
        {
            var x = new 硬貨支払機();

            x.Insert貨幣(new 硬貨(100));
            var y = x.決済(new 通貨(100)).ToList();

            Assert.IsTrue(y.Count == 0);
        }
Example #2
0
        public void お釣りが出る金額で決済するとお釣りが出る()
        {
            var x = new 硬貨支払機();

            x.Insert貨幣(new 硬貨(500));
            var y = x.決済(new 通貨(140)).OrderBy(x => x.Value).ToList();

            Assert.IsTrue(y[0] == new 硬貨(10));
            Assert.IsTrue(y[1] == new 硬貨(50));
            Assert.IsTrue(y[2] == new 硬貨(100));
            Assert.IsTrue(y[3] == new 硬貨(100));
            Assert.IsTrue(y[4] == new 硬貨(100));
        }
Example #3
0
        public void 足りない金額で決済すると失敗する()
        {
            var x = new 硬貨支払機();

            x.Insert貨幣(new 硬貨(10));
            try {
                x.決済(new 通貨(100));
            }
            catch (InvalidOperationException) {
                return;
            }
            Assert.Fail();
        }