public void DefaultScoreHolderTestSimplePasses() { IPlayer player1 = new MockPlayer(); IPlayer player2 = new MockPlayer(); IScoreHolder scoreHolder = new DefaultScoreHolder(new Dictionary <IPlayer, int> { { player1, 30 }, { player2, 30 } }); scoreHolder.MoveScore(player1, 10); Assert.AreEqual(scoreHolder.GetScore(player1).Value, 40); Assert.AreEqual(scoreHolder.GetScore(player2).Value, 20); scoreHolder.MoveScore(player1, 50); Assert.AreEqual(scoreHolder.GetScore(player1).Value, 60); Assert.AreEqual(scoreHolder.GetScore(player2).Value, 0); IntReactiveProperty property = null; scoreHolder.TryGetScore(new MockPlayer(), out property); Assert.IsNull(property); Assert.Catch(typeof(KeyNotFoundException), () => scoreHolder.GetScore(new MockPlayer())); }