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()));
        }