public async Task InitializeAsync() { //_Connection = new SqliteConnection("Data Source=:memory:"); //_DbContext = new WorkflowDbContext(new DbContextOptionsBuilder().UseSqlite(_Connection).Options); _Connection = new SqlConnection("Data Source=.;Database=WorkflowControllerPostSecretTests;Integrated Security=True"); _DbContext = new WorkflowDbContext(new DbContextOptionsBuilder().UseSqlServer(_Connection).Options); _FakeNumbers = new FakeNumberGen(); _Factory = WithWebHostBuilder(builder => { builder.ConfigureTestServices(services => { services.AddScoped(sp => { var context = //new WorkflowDbContext(new DbContextOptionsBuilder().UseSqlite(_Connection).Options); new WorkflowDbContext(new DbContextOptionsBuilder().UseSqlServer(_Connection).Options); context.BeginTransaction(); return(context); }); services.Replace(new ServiceDescriptor(typeof(IRandomNumberGenerator), _FakeNumbers)); }); }); await _DbContext.Database.EnsureDeletedAsync(); await _DbContext.Database.EnsureCreatedAsync(); //await _Connection.OpenAsync(); }
public void Test_ScoreSixes() { int expectedScore = 30; int[] numbers = new int[] { 6, 6, 6, 6, 6 }; FakeNumberGen fakeNumberGen = new FakeNumberGen(numbers); YahtzeeDice dice = new YahtzeeDice(fakeNumberGen); dice.Roll(); YahtzeeScorecard scores = dice.CalculateScores(); Assert.AreEqual(expectedScore, scores.ScoreSectionUpper[YahtzeeScorecard.Upper.Sixes]); }
public void Test_ScoreChance() { int expectedScore = 15; int[] numbers = new int[] { 1, 2, 4, 3, 5 }; FakeNumberGen fakeNumberGen = new FakeNumberGen(numbers); YahtzeeDice dice = new YahtzeeDice(fakeNumberGen); dice.Roll(); YahtzeeScorecard scores = dice.CalculateScores(); Assert.AreEqual(expectedScore, scores.ScoreSectionLower[YahtzeeScorecard.Lower.Chance]); }
public void Test_ScoreYahtzee() { int expectedScore = YahtzeeScorecard.SCORE_YAHTZEE; int[] numbers = new int[] { 6, 6, 6, 6, 5 }; FakeNumberGen fakeNumberGen = new FakeNumberGen(numbers); YahtzeeDice dice = new YahtzeeDice(fakeNumberGen); dice.Roll(); YahtzeeScorecard scores = dice.CalculateScores(); Assert.AreNotEqual(expectedScore, scores.ScoreSectionLower[YahtzeeScorecard.Lower.Yahtzee]); }
public void Test_ScoreLargeStraight() { int expectedScore = YahtzeeScorecard.SCORE_LARGESTRAIGHT; int[] numbers = new int[] { 1, 2, 4, 3, 5 }; FakeNumberGen fakeNumberGen = new FakeNumberGen(numbers); YahtzeeDice dice = new YahtzeeDice(fakeNumberGen); dice.Roll(); YahtzeeScorecard scores = dice.CalculateScores(); Assert.AreEqual(expectedScore, scores.ScoreSectionLower[YahtzeeScorecard.Lower.LargeStraight]); }
public void Test_ScoreFullHouse() { int expectedScore = YahtzeeScorecard.SCORE_FULLHOUSE; int[] numbers = new int[] { 2, 2, 5, 5, 5 }; FakeNumberGen fakeNumberGen = new FakeNumberGen(numbers); YahtzeeDice dice = new YahtzeeDice(fakeNumberGen); dice.Roll(); YahtzeeScorecard scores = dice.CalculateScores(); Assert.AreEqual(expectedScore, scores.ScoreSectionLower[YahtzeeScorecard.Lower.FullHouse]); }
public void Test_ScoreFourOfAKind() { int expectedScore = 21; int[] numbers = new int[] { 5, 5, 5, 5, 1 }; FakeNumberGen fakeNumberGen = new FakeNumberGen(numbers); YahtzeeDice dice = new YahtzeeDice(fakeNumberGen); dice.Roll(); YahtzeeScorecard scores = dice.CalculateScores(); // Dice match both three and four of a kind Assert.AreEqual(expectedScore, scores.ScoreSectionLower[YahtzeeScorecard.Lower.ThreeOfAKind]); Assert.AreEqual(expectedScore, scores.ScoreSectionLower[YahtzeeScorecard.Lower.FourOfAKind]); }