public void WithActionTargetCalculator_NullArgument_Throws()
        {
            // Arrange
            var builder = new HealActionBuilder();

            // Act and Assert
            Assert.Throws <ArgumentNullException>(() => _ = builder.WithActionTargetCalculator(null));
        }
        public void Build_MissingActionTargetCalculator_Throws()
        {
            // Arrange
            var builder = new HealActionBuilder()
                          .WithAmount(20)
                          .PercentageHealing();

            // Act and Assert
            Assert.Throws <InvalidOperationException>(() => _ = builder.Build());
        }
        public void Build_CallsPresent_Succeeds()
        {
            // Arrange
            var builder = new HealActionBuilder()
                          .WithAmount(20)
                          .AbsoluteHealing()
                          .TargetsUser();

            // Act
            var heal = builder.Build();

            // Assert
            Assert.That(heal, Is.Not.Null);
        }