public void CantGainMoreThanMaximumMana()
        {
            // Arrange
            var mana = new Mana();

            // Act
            Action act = () => mana.Gain(Rules.MaximumMana);

            // Assert
            Assert.Throws <TooMuchManaException>(act);
        }
        public void GainingManaAddToTotal()
        {
            // Arrange
            int expectedTotal = 2;
            var mana          = new Mana();

            // Act
            mana.Gain(1);

            // Assert
            Assert.Equal(expectedTotal, mana.Total);
        }
        public void GainingManaAddSlots()
        {
            // Arrange
            int expectedMana = 2;
            var mana         = new Mana();

            // Act
            mana.Gain(1);

            // Assert
            Assert.Equal(expectedMana, mana.Slots);
        }