示例#1
0
 public Property EncodeDecodeAreDuals_Collected(Mod4Binary input)
 {
     var processed = Z85.Decode(Z85.Encode(input.Data));
       return processed.SequenceEqual(input.Data)
               // gather individual sizes
               .Collect(input.Data.Length);
 }
示例#2
0
        public Property EncodeDecodeAreDuals_Trivial(Mod4Binary input)
        {
            var processed = Z85.Decode(Z85.Encode(input.Data));

            return(processed.SequenceEqual(input.Data)
                   // identify a special case
                   .Trivial(input.Data.Any(b => b == 70)));
        }
示例#3
0
        public Property EncodeDecodeAreDuals_Collected(Mod4Binary input)
        {
            var processed = Z85.Decode(Z85.Encode(input.Data));

            return(processed.SequenceEqual(input.Data)
                   // gather individual sizes
                   .Collect(input.Data.Length));
        }
示例#4
0
 public Property EncodeDecodeAreDuals_Classified(Mod4Binary input)
 {
     var processed = Z85.Decode(Z85.Encode(input.Data));
       return processed.SequenceEqual(input.Data)
               // bucket by common sizes
               .Classify(input.IsLarge (),"Large (64 .. ∞ bytes)"  )
               .Classify(input.IsMedium(),"Medium (24 .. 60 bytes)")
               .Classify(input.IsSmall (),"Small (8 .. 20 bytes)"  )
               .Classify(input.IsTiny  (),"Tiny (0 .. 4 bytes)"    );
 }
示例#5
0
        public Property EncodeDecodeAreDuals_Classified(Mod4Binary input)
        {
            var processed = Z85.Decode(Z85.Encode(input.Data));

            return(processed.SequenceEqual(input.Data)
                   // bucket by common sizes
                   .Classify(input.IsLarge(), "Large (64 .. ∞ bytes)")
                   .Classify(input.IsMedium(), "Medium (24 .. 60 bytes)")
                   .Classify(input.IsSmall(), "Small (8 .. 20 bytes)")
                   .Classify(input.IsTiny(), "Tiny (0 .. 4 bytes)"));
        }
示例#6
0
 public Property EncodeDecodeAreDuals_Combined(Mod4Binary input)
 {
     var processed = Z85.Decode(Z85.Encode(input.Data));
       return processed.SequenceEqual(input.Data)
               // identify a special case
               .Trivial(input.Data.Any (b => b == 70))
               // bucket by common sizes
               .Classify(input.IsLarge (),"Large (64 .. ∞ bytes)"  )
               .Classify(input.IsMedium(),"Medium (24 .. 60 bytes)")
               .Classify(input.IsSmall (),"Small (8 .. 20 bytes)"  )
               .Classify(input.IsTiny  (),"Tiny (0 .. 4 bytes)"    )
               // gather individual sizes
               .Collect(input.Data.Length);
 }
示例#7
0
        public Property EncodeDecodeAreDuals_Combined(Mod4Binary input)
        {
            var processed = Z85.Decode(Z85.Encode(input.Data));

            return(processed.SequenceEqual(input.Data)
                   // identify a special case
                   .Trivial(input.Data.Any(b => b == 70))
                   // bucket by common sizes
                   .Classify(input.IsLarge(), "Large (64 .. ∞ bytes)")
                   .Classify(input.IsMedium(), "Medium (24 .. 60 bytes)")
                   .Classify(input.IsSmall(), "Small (8 .. 20 bytes)")
                   .Classify(input.IsTiny(), "Tiny (0 .. 4 bytes)")
                   // gather individual sizes
                   .Collect(input.Data.Length));
        }
示例#8
0
 public Boolean EncodeDecodeAreDuals_Passing(Mod4Binary input)
 {
     var processed = Z85.Decode(Z85.Encode(input.Data));
       return processed.SequenceEqual(input.Data);
 }
示例#9
0
        public Boolean EncodeDecodeAreDuals_Passing(Mod4Binary input)
        {
            var processed = Z85.Decode(Z85.Encode(input.Data));

            return(processed.SequenceEqual(input.Data));
        }
示例#10
0
 public Property EncodeDecodeAreDuals_Trivial(Mod4Binary input)
 {
     var processed = Z85.Decode(Z85.Encode(input.Data));
       return processed.SequenceEqual(input.Data)
               // identify a special case
               .Trivial(input.Data.Any (b => b == 70));
 }
示例#11
0
 public static Boolean IsLarge(this Mod4Binary input)
 {
     return(input.Data.Length.Within(64, Int32.MaxValue));
 }
示例#12
0
 public static Boolean IsMedium(this Mod4Binary input)
 {
     return(input.Data.Length.Within(24, 60));
 }
示例#13
0
 public static Boolean IsSmall(this Mod4Binary input)
 {
     return(input.Data.Length.Within(8, 20));
 }
示例#14
0
 public static Boolean IsTiny(this Mod4Binary input)
 {
     return(input.Data.Length.Within(Int32.MinValue, 4));
 }