public void ReadXml_Strm2()
{
string input = string.Empty;
StringReader sr;
var ds = new DataSet();
input += "<?xml version=\"1.0\"?>";
input += "<Stock name=\"MSFT\">";
input += " <Company name=\"Microsoft Corp.\"/>";
input += " <Price type=\"high\">";
input += " <Value>10.0</Value>";
input += " <Date>01/20/2000</Date>";
input += " </Price>";
input += " <Price type=\"low\">";
input += " <Value>1.0</Value>";
input += " <Date>03/21/2002</Date>";
input += " </Price>";
input += " <Price type=\"current\">";
input += " <Value>3.0</Value>";
input += " <Date>TODAY</Date>";
input += " </Price>";
input += "</Stock>";
sr = new StringReader(input);
ds.ReadXml(sr);
// Relation Count
Assert.Equal(2, ds.Relations.Count);
// RelationName 1
Assert.Equal("Stock_Company", ds.Relations[0].RelationName);
// RelationName 2
Assert.Equal("Stock_Price", ds.Relations[1].RelationName);
// Tables count
Assert.Equal(3, ds.Tables.Count);
// Tables[0] ChildRelations count
Assert.Equal(2, ds.Tables[0].ChildRelations.Count);
// Tables[0] ChildRelations[0] name
Assert.Equal("Stock_Company", ds.Tables[0].ChildRelations[0].RelationName);
// Tables[0] ChildRelations[1] name
Assert.Equal("Stock_Price", ds.Tables[0].ChildRelations[1].RelationName);
// Tables[1] ChildRelations count
Assert.Equal(0, ds.Tables[1].ChildRelations.Count);
// Tables[2] ChildRelations count
Assert.Equal(0, ds.Tables[2].ChildRelations.Count);
// Tables[0] ParentRelations count
Assert.Equal(0, ds.Tables[0].ParentRelations.Count);
// Tables[1] ParentRelations count
Assert.Equal(1, ds.Tables[1].ParentRelations.Count);
// Tables[1] ParentRelations[0] name
Assert.Equal("Stock_Company", ds.Tables[1].ParentRelations[0].RelationName);
// Tables[2] ParentRelations count
Assert.Equal(1, ds.Tables[2].ParentRelations.Count);
// Tables[2] ParentRelations[0] name
Assert.Equal("Stock_Price", ds.Tables[2].ParentRelations[0].RelationName);
}
[Fact]