public void TestNonStringAttr() { ReportReaderHelpers.CreateReader().ReadFromString <CWithNonStringProp>( @"<root A='1'></root> ").Should().BeEquivalentTo(new CWithNonStringProp { A = 1 }); }
public void TestDuplicateItemsWithNoExceptionWhenDuplicateElement() { ReportReaderHelpers.CreateReader().ReadFromString <CForDuplicateTest>( @"<root> <A>1</A> <B>x</B> <B>y</B> <A>2</A> </root> ").Should().BeEquivalentTo(new CForDuplicateTest { A = 2, B = new[] { "x", "y" } }); }
public void TestDuplicateItemsInArrayWithExceptionWhenDuplicateElement() { var configuration = new OnDeserializeConfiguration(); configuration.OnDuplicateElement += delegate(object sender, DeserializationContext context) { throw new InvalidOperationException($"Duplicate element '{context.CurrentElementLocalName}'"); }; Assert.That(() => ReportReaderHelpers.CreateReader(configuration).ReadFromString <CForDuplicateTest>( @"<root> <B>x</B> <B>y</B> <A>2</A> <B>z</B> </root> "), Throws.Exception.TypeOf <InvalidOperationException>().With.Message.EqualTo("Duplicate element 'B'")); }
public void TestArrayOfArrays() { Assert.That(() => ReportReaderHelpers.CreateReader().ReadFromString <string[][]>("<xxx />"), Throws.Exception.TypeOf <NotSupportedException>().With.Message.EqualTo("массив массивов")); }
public void TestObjectDisabled() { Assert.That(() => ReportReaderHelpers.CreateReader().ReadFromString <object>("<xxx />"), Throws.Exception.TypeOf <NotSupportedException>().With.Message.EqualTo("Type 'System.Object' cannot be deserialized")); }
public void TestNonVisibleClassesNotSupported() { Assert.That(() => ReportReaderHelpers.CreateReader().ReadFromString <CInvisible>("<xxx />"), Throws.Exception.TypeOf <NotSupportedException>().With.Message.Matches("Type '.*CInvisible' should be visible outside assembly")); }
public void TestMultidimensionalArray() { Assert.That(() => ReportReaderHelpers.CreateReader().ReadFromString <string[, ]>("<xxx />"), Throws.Exception.TypeOf <NotSupportedException>().With.Message.EqualTo("многомерный массив")); }
public void TestEmptyNvc() { var reportReader = ReportReaderHelpers.CreateReader(); Assert.Throws <NotSupportedException>(() => reportReader.Read <C1>(new NameValueCollection())); }