public void Should_Create_TransactionRow() { var factory = new AbstractTransactionFactory(); var transaction = new Transaction() { Id = new Guid("008fd303-e315-4988-be7f-184e56d8be1c"), AccountId = new Guid("29211dac-410d-40de-808c-fe1ce4a31bd8"), Amount = 50000m, Data = "{variablesymbol:'111', nonexisting:'symbol'}", Date = new DateTime(2017, 1, 1), Type = "fio", CategoryData = "[]" }; var row = factory.Create(transaction); Assert.Equal(transaction.Id, row.Id); Assert.Equal(transaction.Id.ToString(), row["id"]); Assert.Equal(transaction.Date.Date.ToString(), row["date"]); Assert.Equal(transaction.Amount.ToString(), row["amount"]); Assert.Equal(transaction.Type.ToString(), row["type"]); Assert.Equal(transaction.AccountId.ToString(), row["accountId"]); Assert.Equal(transaction.AccountId, row.AccountId); Assert.Equal(transaction.Amount, row.Amount); Assert.Equal("111", row["variablesymbol"]); Assert.Null(row["nonexisting"]); Assert.Throws <ArgumentException>(() => row["amount"] = "unknown"); }
public void Should_Throw_Exception() { var factory = new AbstractTransactionFactory(); Assert.Throws <ArgumentException>(() => factory.Create(new Transaction() { Type = "random" })); }