public void AddArgument(bool isField, out NamedArgumentTypeEncoder typeEncoder, out NameEncoder name, out LiteralEncoder literal) { Builder.WriteByte(isField ? (byte)0x53 : (byte)0x54); typeEncoder = new NamedArgumentTypeEncoder(Builder); name = new NameEncoder(Builder); literal = new LiteralEncoder(Builder); }
public void NameEncoder_Name() { var b = new BlobBuilder(); var e = new NameEncoder(b); Assert.Same(b, e.Builder); e.Name("abc"); AssertEx.Equal(new byte[] { 0x03, 0x61, 0x62, 0x63 }, b.ToArray()); b.Clear(); e.Name("\ud800"); // unpaired surrogate AssertEx.Equal(new byte[] { 0x03, 0xED, 0xA0, 0x80 }, b.ToArray()); b.Clear(); Assert.Throws <ArgumentNullException>(() => e.Name(null)); AssertExtensions.Throws <ArgumentException>("name", () => e.Name("")); }
public void AddArgument(bool isField, out NamedArgumentTypeEncoder typeEncoder, out NameEncoder name, out LiteralEncoder literal) { Builder.WriteByte(isField ? (byte)0x53 : (byte)0x54); typeEncoder = new NamedArgumentTypeEncoder(Builder); name = new NameEncoder(Builder); literal = new LiteralEncoder(Builder); }
public void NameEncoder_Name() { var b = new BlobBuilder(); var e = new NameEncoder(b); Assert.Same(b, e.Builder); e.Name("abc"); AssertEx.Equal(new byte[] { 0x03, 0x61, 0x62, 0x63 }, b.ToArray()); b.Clear(); e.Name("\ud800"); // unpaired surrogate AssertEx.Equal(new byte[] { 0x03, 0xED, 0xA0, 0x80 }, b.ToArray()); b.Clear(); Assert.Throws<ArgumentNullException>(() => e.Name(null)); Assert.Throws<ArgumentException>(() => e.Name("")); }