Skip to content

Instantly share code, notes, and snippets.

@hatelove
Created June 17, 2014 09:36
Show Gist options
  • Save hatelove/0dc5c0e378fccee66152 to your computer and use it in GitHub Desktop.
Save hatelove/0dc5c0e378fccee66152 to your computer and use it in GitHub Desktop.
test cases sample
[Binding]
[Scope(Feature = "StockChanging")]
public class StockChangingSteps
{
private JoeyTestEntities dbContext;
private StockChangesService target;
[BeforeScenario]
public void BeforeScenario()
{
target = new StockChangesService();
using (dbContext = new JoeyTestEntities())
{
dbContext.Database.ExecuteSqlCommand("Delete [DailyStockSettlement]");
dbContext.Database.ExecuteSqlCommand("Delete [StockChangesIo]");
dbContext.SaveChanges();
}
}
[AfterScenario]
public void AfterScenario()
{
}
[Given(@"新增一筆庫存異動資料")]
public void Given新增一筆庫存異動資料(Table table)
{
var stockChanges = table.CreateSet<StockChangesIo>();
ScenarioContext.Current.Set<IEnumerable<StockChangesIo>>(stockChanges);
}
[Given(@"日結表資料為")]
public void Given日結表資料為(Table table)
{
//新增日結表資料到db中
var dailyStockSettlements = table.CreateSet<DailyStockSettlement>();
using (dbContext = new JoeyTestEntities())
{
foreach (var dailyStockSettlement in dailyStockSettlements)
{
dbContext.DailyStockSettlements.Add(dailyStockSettlement);
}
dbContext.SaveChanges();
}
}
[When(@"呼叫日結表Update")]
public void When呼叫日結表Update()
{
var stockChanges = ScenarioContext.Current.Get<IEnumerable<StockChangesIo>>();
target.Insert(stockChanges);
}
[Then(@"日結表結果應為")]
public void Then日結表結果應為(Table table)
{
using (dbContext = new JoeyTestEntities())
{
var dailyStockSettlementsFromDb = dbContext.DailyStockSettlements.ToList();
table.CompareToSet<DailyStockSettlement>(dailyStockSettlementsFromDb);
}
}
[Then(@"庫存異動表結果應為")]
public void Then庫存異動表結果應為(Table table)
{
using (dbContext = new JoeyTestEntities())
{
var stockChangesFromDb = dbContext.StockChangesIos.ToList();
table.CompareToSet<StockChangesIo>(stockChangesFromDb);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment