public void 測試_第一集買一本_第二三集買兩本_價錢為_460() { ///Arrange var target = new PotterBooks(); this._dummyBooks.Add(new Book { Id = 1, Name = "哈利波特第一集", Price = 100 }); this._dummyBooks.Add(new Book { Id = 2, Name = "哈利波特第二集", Price = 100 }); this._dummyBooks.Add(new Book { Id = 2, Name = "哈利波特第二集", Price = 100 }); this._dummyBooks.Add(new Book { Id = 3, Name = "哈利波特第三集", Price = 100 }); this._dummyBooks.Add(new Book { Id = 3, Name = "哈利波特第三集", Price = 100 }); var expected = 460; ///Actual var actual = target.Calculate(this._dummyBooks); ///Assert Assert.AreEqual(expected, actual); }
public void 測試_買第一二三四集價錢為320() { ///Arrange var target = new PotterBooks(); this._dummyBooks.Add(new Book { Id = 1, Name = "哈利波特第一集", Price = 100 }); this._dummyBooks.Add(new Book { Id = 2, Name = "哈利波特第二集", Price = 100 }); this._dummyBooks.Add(new Book { Id = 3, Name = "哈利波特第三集", Price = 100 }); this._dummyBooks.Add(new Book { Id = 4, Name = "哈利波特第四集", Price = 100 }); decimal expected = 320; ///Act decimal actual = target.Calculate(this._dummyBooks); ///Assert Assert.AreEqual(expected, actual); }
public void 測試_只買第一集價錢為100() { ///Arrange var target = new PotterBooks(); _dummyBooks.Add(new Book { Id = 1, Name = "哈利波特第一集", Price = 100 }); decimal expected = 100; ///Act var actual = target.Calculate(this._dummyBooks); ///Assert expected.ToExpectedObject().ShouldEqual(actual); }