public void IsValid_TestMethod()
        {
            BankrekeningNummerVerification verification = new BankrekeningNummerVerification();

            foreach (string inValidBankrekeningNummerTestNummer in invalidBankrekeningNummerTestNummers)
            {
                bool result   = verification.IsValid(inValidBankrekeningNummerTestNummer);
                bool expected = false;
                Assert.AreEqual(expected, result, "Expected BankrekeningNummerVerification.IsValid({0} to be {1}", inValidBankrekeningNummerTestNummer, expected);
            }

            foreach (string validBankrekeningNummerTestNummer in validBankrekeningNummerTestNummers)
            {
                bool result   = verification.IsValid(validBankrekeningNummerTestNummer);
                bool expected = true;
                Assert.AreEqual(expected, result, "Expected BankrekeningNummerVerification.IsValid({0} to be {1}", validBankrekeningNummerTestNummer, expected);
            }
        }
        public void Complete_cannotBecomeTenDigits_TestMethod()
        {
            BankrekeningNummerVerification verification = new BankrekeningNummerVerification();

            Exception exception = null;

            foreach (string cannotBecomeTenDigit in cannotBecomeTenDigits)
            {
                try
                {
                    string tenDigit = verification.Complete(cannotBecomeTenDigit);
                    Assert.Inconclusive("It should not be possible that {0} completed into {1}", Reflector.GetNameSeparatorValue(new { cannotBecomeTenDigit }), Reflector.GetNameSeparatorValue(new { tenDigit }));
                }
                catch (Exception ex)
                {
                    exception = ex;
                    continue;
                }
            }
            throw exception;
        }
        public void Random_validLengths_TestMethod()
        {
            BankrekeningNummerVerification verification = new BankrekeningNummerVerification();

            runRandomManyTimesForAllLengths(verification, validateGeneratedNumber);
        }
        private static void validateGeneratedNumber(BankrekeningNummerVerification verification, string generatedBankrekeningNummer)
        {
            bool validBankrekeningNummer = verification.IsValid(generatedBankrekeningNummer);

            Assert.IsTrue(validBankrekeningNummer, "Generated {0} is invalid", Reflector.GetNameSeparatorValue(new { generatedBankrekeningNummer }));
        }
        public void Random_invalidLength_TestMethod()
        {
            BankrekeningNummerVerification verification = new BankrekeningNummerVerification();

            verification.Random(100); // invalid length; should throw an exception
        }