public void HasAnnotation_AssertUnknownSymbolException() { string input = "$ion_symbol_table::{ imports:[{ name: \"abc\", version: 1, max_id: 1}],symbols: [\"foo\"]}$10::$11::\"value\""; UserTextReader reader = new UserTextReader(input); ReaderTestCommon.HasAnnotation_AssertUnknownSymbolException(reader); }
public void EmptyBlob() { const string text = "{{}}"; var reader = new UserTextReader(text); Assert.AreEqual(IonType.Blob, reader.MoveNext()); }
public void Date_2000_11_20_8_20_15_Unknown() { var data = DirStructure.OwnTestFileAsBytes("text/ts_2000_11_20_8_20_15_unknown.ion"); IIonReader reader = new UserTextReader(new MemoryStream(data)); ReaderTimestampCommon.Date_2000_11_20_8_20_15_Unknown(reader); }
/// <summary> /// Deserialize a text format to object type T /// </summary> /// <param name="text">Text input</param> /// <typeparam name="T">Type of object to deserialize to</typeparam> /// <returns>Deserialized object</returns> public T Deserialize <T>(string text) { var reader = new UserTextReader(text); reader.MoveNext(); return((T)IonSerializationPrivate.Deserialize(reader, typeof(T))); }
public void Float_Underscore(string f, double val) { var reader = new UserTextReader(f); Assert.AreEqual(IonType.Float, reader.MoveNext()); Assert.AreEqual(val, reader.DoubleValue()); }
/// <summary> /// Deserialize a text format to object type T /// </summary> /// <param name="text">Text input</param> /// <param name="scalarConverter"></param> /// <typeparam name="T">Type of object to deserialize to</typeparam> /// <returns>Deserialized object</returns> public T Deserialize <T>(string text, IScalarConverter scalarConverter = null) { var reader = new UserTextReader(text); reader.MoveNext(); return((T)IonSerializationPrivate.Deserialize(reader, typeof(T), scalarConverter)); }
public void Empty() { var bytes = new byte[0]; var reader = new UserTextReader(new MemoryStream(bytes)); ReaderTestCommon.Empty(reader); }
public void HasAnnotation_ZeroSymbol() { // an int with zero symbol annotation // $0::18 var reader = new UserTextReader("$0::18"); ReaderTestCommon.HasAnnotation_ZeroSymbol(reader); }
public void HasAnnotationFalse_SingleField() { // a singlefield structure with annotations // {withannot:years::months::days::hours::minutes::seconds::18} byte[] data = DirStructure.OwnTestFileAsBytes("text/annot_singlefield.ion"); UserTextReader reader = new UserTextReader(new MemoryStream(data)); ReaderTestCommon.HasAnnotationFalse_SingleField(reader); }
public void FlatIntList() { //a flat list of ints [123,456,789] var flatListInt = DirStructure.OwnTestFileAsBytes("text/flatlist_int.ion"); var reader = new UserTextReader(new MemoryStream(flatListInt)); ReaderTestCommon.FlatIntList(reader); }
public void CommentThenEof(string fileName) { var fileAsStream = DirStructure.IonTestFileAsStream(fileName); var reader = new UserTextReader(fileAsStream); Assert.AreEqual(IonType.Symbol, reader.MoveNext()); Assert.AreEqual("abc", reader.SymbolValue().Text); Assert.AreEqual(IonType.None, reader.MoveNext()); }
public void CurrentType() { var bin = Encoding.UTF8.GetBytes("true"); var reader = new UserTextReader(new MemoryStream(bin)); Assert.AreEqual(IonType.None, reader.CurrentType); reader.MoveNext(); Assert.AreEqual(IonType.Bool, reader.CurrentType); }
public void SingleIntList() { var data = DirStructure.OwnTestFileAsBytes("text/single_int_list.ion"); var reader = new UserTextReader(new MemoryStream(data)); ReaderTestCommon.SingleIntList(reader); reader = new UserTextReader(Encoding.UTF8.GetString(data)); ReaderTestCommon.SingleIntList(reader); }
public void SingleNumber(string text, long value) { var bin = Encoding.UTF8.GetBytes(text); var reader = new UserTextReader(new MemoryStream(bin)); ReaderTestCommon.SingleNumber(reader, value); reader = new UserTextReader(text); ReaderTestCommon.SingleNumber(reader, value); }
public void Combined1() { var data = DirStructure.OwnTestFileAsBytes("text/combined1.ion"); var reader = new UserTextReader(new MemoryStream(data)); ReaderTestCommon.Combined1(reader); reader = new UserTextReader(Encoding.UTF8.GetString(data)); ReaderTestCommon.Combined1(reader); }
public void Struct_OneBlob() { var data = DirStructure.OwnTestFileAsBytes("text/struct_oneblob.ion"); var reader = new UserTextReader(new MemoryStream(data)); ReaderTestCommon.Struct_OneBlob(reader); reader = new UserTextReader(Encoding.UTF8.GetString(data)); ReaderTestCommon.Struct_OneBlob(reader); }
public void OneBoolInStruct() { //simple datagram: {yolo:true} var oneBool = DirStructure.OwnTestFileAsBytes("text/onebool.ion"); var reader = new UserTextReader(new MemoryStream(oneBool)); ReaderTestCommon.OneBoolInStruct(reader); reader = new UserTextReader(Encoding.UTF8.GetString(oneBool)); ReaderTestCommon.OneBoolInStruct(reader); }
public void EolComment(string fileName) { var fileAsStream = DirStructure.IonTestFileAsStream(fileName); var reader = new UserTextReader(fileAsStream); Assert.AreEqual(IonType.List, reader.MoveNext()); reader.StepIn(); Assert.AreEqual(IonType.None, reader.MoveNext()); reader.StepOut(); Assert.AreEqual(IonType.None, reader.MoveNext()); }
public void TestBasicBool() { byte[] values = DirStructure.IonTestFileAsBytes("good/booleans.ion"); string str = Encoding.UTF8.GetString(values); var reader = new UserTextReader(str); reader.MoveNext(); Assert.AreEqual(true, reader.BoolValue()); var a = reader.MoveNext(); Assert.AreEqual(false, reader.BoolValue()); }
public void SingleSymbol() { //struct with single symbol //{single_symbol:'something'} var data = DirStructure.OwnTestFileAsBytes("text/single_symbol.ion"); var reader = new UserTextReader(new MemoryStream(data)); ReaderTestCommon.SingleSymbol(reader); reader = new UserTextReader(Encoding.UTF8.GetString(data)); ReaderTestCommon.SingleSymbol(reader); }
public void TrivialStruct() { //empty struct {} var trivial = DirStructure.OwnTestFileAsBytes("text/trivial.ion"); var text = Encoding.UTF8.GetString(trivial); var reader = new UserTextReader(text); ReaderTestCommon.TrivialStruct(reader); reader = new UserTextReader(new MemoryStream(trivial)); ReaderTestCommon.TrivialStruct(reader); }
public void Blob_PartialRead(int size, int step) { var blob = new byte[size]; for (var i = 0; i < size; i++) { blob[i] = (byte)i; } var text = "{{" + Convert.ToBase64String(blob) + "}}"; var reader = new UserTextReader(text); ReaderTestCommon.Blob_PartialRead(size, step, reader); }
public void FlatScalar() { //a flat struct of scalar values: //boolean:true //str:"yes" //integer:123456 //longInt:int.Max*2 //bigInt:long.Max*10 //double:2213.1267567f var flatScalar = DirStructure.OwnTestFileAsBytes("text/flat_scalar.ion"); var reader = new UserTextReader(new MemoryStream(flatScalar)); ReaderTestCommon.FlatScalar(reader); reader = new UserTextReader(Encoding.UTF8.GetString(flatScalar)); ReaderTestCommon.FlatScalar(reader); }
/// <summary> /// Load a string of Ion text. /// </summary> /// <param name="ionText">Ion text string.</param> /// <returns>An <see cref="IonDatagram"/> tree view.</returns> public IonDatagram Load(string ionText) { var reader = new UserTextReader(ionText, _catalog); return(WriteDatagram(reader)); }