public void DecodeEmptyStringIsError() { var dr = new DecodeReturn(""); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_ERROR); }
public void DecodedTypeFromIntegerOne() { var dr = new DecodeReturn("i1|"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_INTEGER); Assert.AreEqual(dr.L, 1); }
public void DecodeShortOne() { var dr = new DecodeReturn("s1|"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_SHORT); Assert.AreEqual(dr.L, 1); }
public void DecodeSByteOne() { var dr = new DecodeReturn("b1|"); // NOTE: sbyte encoded with 'b' Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_BYTE); Assert.AreEqual(dr.L, 1); }
public void DecodeSByteMin() { var dr = new DecodeReturn("b-128|"); // NOTE: sbyte encoded with 'b' Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_BYTE); Assert.AreEqual(dr.L, SByte.MinValue); }
public void DecodeLongOne() { var dr = new DecodeReturn("l1|"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_LONG); Assert.AreEqual(dr.L, 1); }
public void DecodeDoubleOnePointOneHumanReadableOnly() { var s = "d|1.1|"; var dr = new DecodeReturn(s); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_DOUBLE); Assert.AreEqual(dr.D, 1.1); }
public void DecodedTypeFromCharUnicodeZero() { var dr = new DecodeReturn("'\x0000'"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_CHAR); Assert.IsTrue(dr.C.HasValue); Assert.AreEqual(dr.C.Value, '\0'); }
public void DecodedTypeFromCharBackslash() { var dr = new DecodeReturn("'\\\\'"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_CHAR); Assert.IsTrue(dr.C.HasValue); Assert.AreEqual(dr.C.Value, '\\'); }
public void DecodeCharDoubleQuote() { var dr = new DecodeReturn("'\"'"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_CHAR); Assert.IsTrue(dr.C.HasValue); Assert.AreEqual(dr.C.Value, '\"'); }
public void DecodeCharBackspace() { var dr = new DecodeReturn("'\b'"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_CHAR); Assert.IsTrue(dr.C.HasValue); Assert.AreEqual(dr.C.Value, '\b'); }
public void DecodeCharLowercaseA() { var dr = new DecodeReturn("'a'"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_CHAR); Assert.IsTrue(dr.C.HasValue); Assert.AreEqual(dr.C.Value, 'a'); }
public void DecodeBooleanUppercaseFalse() { var dr = new DecodeReturn("FALSE"); Code.Decode(dr); Assert.IsTrue(dr.B.HasValue); Assert.IsFalse(dr.B.Value); Assert.AreEqual(dr.Type, DecodeReturn.T_BOOLEAN); }
public void DecodeBooleanPropercaseTrue() { var dr = new DecodeReturn("True"); Code.Decode(dr); Assert.IsTrue(dr.B.HasValue); Assert.IsTrue(dr.B.Value); Assert.AreEqual(dr.Type, DecodeReturn.T_BOOLEAN); }
public void DecodeShortMaxValue() { //var sh = short.MaxValue; //context.WriteLine(sh.ToString()); var dr = new DecodeReturn("s32767|"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_SHORT); Assert.AreEqual(dr.L, short.MaxValue); }
public void DecodedTypeFromCharUnicodeAmperstand() { var dr = new DecodeReturn("'\u0026'"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_CHAR); Assert.IsTrue(dr.C.HasValue); Assert.AreEqual(dr.C.Value, '\u0026'); Assert.AreEqual(dr.C.Value, '&'); }
public void DecodedTypeFromIntegerMaxValue() { //var i = int.MaxValue; //context.WriteLine(i.ToString()); var dr = new DecodeReturn("i2147483647|"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_INTEGER); Assert.AreEqual(dr.L, int.MaxValue); }
public void DecodeFloatOnePointOneHumanReadableOnly() { var f = 1.1f; var s = "f|" + f.ToString("R") + "|"; var dr = new DecodeReturn(s); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_FLOAT); Assert.AreEqual(dr.D, 1.1f); }
public void DecodeLongMinValue() { //var l = long.MinValue; //context.WriteLine(l.ToString()); var dr = new DecodeReturn("l-9223372036854775808|"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_LONG); Assert.AreEqual(dr.L, long.MinValue); }
public void DecodeFloatOnePointOne() { var f = 1.1f; var s = "f" + BitConverter.DoubleToInt64Bits(f) + "|" + f.ToString("R") + "|"; //var s = "f4607632778870128640|1.1|"; var dr = new DecodeReturn(s); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_FLOAT); Assert.AreEqual(dr.D, 1.1f); }
public void DecodeFloatMinValue() { var f = float.MinValue; var s = "f" + BitConverter.DoubleToInt64Bits(f) + "|" + f.ToString("R") + "|"; context.WriteLine(s); var dr = new DecodeReturn("f-4039728866288205824|-3.40282347E+38|"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_FLOAT); Assert.AreEqual(dr.D, f); }
public void DecodeFloatMaxValueHumanReadableOnly() { var f = float.Parse(float.MaxValue.ToString("R")); var s = "f" + BitConverter.DoubleToInt64Bits(f) + "|" + f.ToString("R") + "|"; context.WriteLine(s); var dr = new DecodeReturn(s); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_FLOAT); Assert.AreEqual(dr.D, f); }
public void EncodeStringWithUnicodeZero() { var q = "\""; var input = "Hello World! \x0000 Goodbye!"; var output = Code.Encode(input); Assert.AreEqual(q + @"Hello World! \0 Goodbye!" + q, output); var dr = new DecodeReturn(output); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_STRING); Assert.AreEqual(dr.S, input); }
public void DecodeDoubleMinValueHumanReadableOnly() { //var s = "d|" + double.MinValue.ToString("R") + "|"; //context.WriteLine(s); var s = "d|-1.7976931348623157E+308|"; context.WriteLine(s); var dr = new DecodeReturn(s); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_DOUBLE); Assert.AreEqual(dr.D, double.Parse(double.MinValue.ToString("R"))); }
public void DecodeDoubleMinValue() { var d = float.MinValue; var s = "d" + BitConverter.DoubleToInt64Bits(d) + "|" + d.ToString("R") + "|"; context.WriteLine(Code.Encode(double.MinValue)); context.WriteLine(s); var dr = new DecodeReturn("d-4503599627370497|-1.7976931348623157E+308|"); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_DOUBLE); Assert.AreEqual(dr.D, double.MinValue); }
public void DecodeDoubleMaxValue() { var d = double.MaxValue; //var s = "d" + BitConverter.DoubleToInt64Bits(d) + "|" + d + "|"; var s = "d9218868437227405311|1.7976931348623157E+308|"; context.WriteLine(Code.Encode(double.MaxValue)); var dr = new DecodeReturn(s); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_DOUBLE); Assert.AreEqual(dr.D, d); }
public void EncodeStringWithNewline() { var q = "\""; var input = "Hello World!\n"; var output = Code.Encode(input); Assert.AreEqual(q + @"Hello World!\n" + q, output); var dr = new DecodeReturn(output); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_STRING); Assert.AreEqual(dr.S, input); }
public void DecodeDoubleOnePointOne() { var d = 1.1; var s = "d" + BitConverter.DoubleToInt64Bits(d) + "|" + d.ToString("R") + "|"; context.WriteLine(s); //var s = "d4607632778762754458|1.1|"; var dr = new DecodeReturn(s); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_DOUBLE); Assert.AreEqual(dr.D, d); }
public void DecodeFloatMinValueHumanReadableOnly() { var f = float.Parse(float.MinValue.ToString("R")); var s = "f|" + f.ToString("R") + "|"; //var s = "f|-3.40282347E+38|"; context.WriteLine(s); var dr = new DecodeReturn(s); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_FLOAT); Assert.AreEqual(dr.D, f); }
public void EncodeStringWithDoubleQuote() { var q = "\""; var input = "Hello World! \"a\" Goodbye!"; var output = Code.Encode(input); Assert.AreEqual(q + "Hello World! \\\"a\\\" Goodbye!" + q, output); var dr = new DecodeReturn(output); Code.Decode(dr); Assert.AreEqual(dr.Type, DecodeReturn.T_STRING); Assert.AreEqual(dr.S, input); }