public void ObjectsRedactToTheirStringRepresentation(object value, string expectedRedactedValue)
        {
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(value, true);

            Assert.That(redacted, Is.EqualTo(expectedRedactedValue));
        }
        public void TrueAndFalseRedactTheSame(bool booleanValue)
        {
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(booleanValue, true);

            Assert.That(redacted, Is.EqualTo("XXXXXX"));
        }
        public void AllEnumsRedactTheSame(Enum enumValue)
        {
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(enumValue, true);

            Assert.That(redacted, Is.EqualTo("XXXXXXXXXX"));
        }
        public void TrueAndFalseRedactTheSame(bool booleanValue)
        {
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(booleanValue, true);

            Assert.That(redacted, Is.EqualTo("XXXXXX"));
        }
        public void AllEnumsRedactTheSame(Enum enumValue)
        {
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(enumValue, true);

            Assert.That(redacted, Is.EqualTo("XXXXXXXXXX"));
        }
        public void ANullStringReturnsNull()
        {
            string input     = null;
            var    attribute = new RedactAttribute();

            var redacted = attribute.Redact(input, true);

            Assert.That(redacted, Is.Null);
        }
        public void NonAlphanumericsAreNotRedacted()
        {
            var input     = @"!%&( +~?<|{]\";
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(input, true);

            Assert.That(redacted, Is.EqualTo(input));
        }
        public void NumbersAreRedacted()
        {
            var input     = "123789";
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(input, true);

            Assert.That(redacted, Is.EqualTo("111111"));
        }
        public void LettersAreRedacted()
        {
            var input     = "abcXYZ";
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(input, true);

            Assert.That(redacted, Is.EqualTo("XXXXXX"));
        }
        public void DateTimeRedactsToRedactedRoundTripRepresentation()
        {
            var dateTime  = new DateTime(2013, 5, 3, 20, 8, 55, DateTimeKind.Utc);
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(dateTime, true);

            Assert.That(redacted, Is.EqualTo("1111-11-11T11:11:11.1111111Z"));
        }
        public void ANullStringReturnsNull()
        {
            string input = null;
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(input, true);

            Assert.That(redacted, Is.Null);
        }
        public void NonAlphanumericsAreNotRedacted()
        {
            var input = @"!%&( +~?<|{]\";
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(input, true);

            Assert.That(redacted, Is.EqualTo(input));
        }
        public void NumbersAreRedacted()
        {
            var input = "123789";
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(input, true);

            Assert.That(redacted, Is.EqualTo("111111"));
        }
        public void LettersAreRedacted()
        {
            var input = "abcXYZ";
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(input, true);

            Assert.That(redacted, Is.EqualTo("XXXXXX"));
        }
        public void ObjectsRedactToTheirStringRepresentation(object value, string expectedRedactedValue)
        {
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(value, true);

            Assert.That(redacted, Is.EqualTo(expectedRedactedValue));
        }
        public void DateTimeRedactsToRedactedRoundTripRepresentation()
        {
            var dateTime = new DateTime(2013, 5, 3, 20, 8, 55, DateTimeKind.Utc);
            var attribute = new RedactAttribute();

            var redacted = attribute.Redact(dateTime, true);

            Assert.That(redacted, Is.EqualTo("1111-11-11T11:11:11.1111111Z"));
        }