Revert "[system.xml] Serialization from reference sources for desktop"
authorAtsushi Eno <atsushieno@gmail.com>
Tue, 12 May 2015 06:42:19 +0000 (14:42 +0800)
committerAtsushi Eno <atsushieno@gmail.com>
Tue, 12 May 2015 06:42:19 +0000 (14:42 +0800)
This reverts commit 6ae517ea65af8cf7585c3a080caaa53d05447cc1.

mcs/class/System.XML/Makefile
mcs/class/System.XML/System.Xml.dll.sources
mcs/class/System.XML/Test/System.Xml.Serialization/ComplexDataStructure.cs
mcs/class/System.XML/Test/System.Xml.Serialization/DeserializeTests.cs
mcs/class/System.XML/Test/System.Xml.Serialization/SoapAttributesTests.cs
mcs/class/System.XML/Test/System.Xml.Serialization/XmlAttributesTests.cs
mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializationWriterTests.cs
mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializerTestClasses.cs
mcs/class/System.XML/Test/System.Xml.Serialization/XmlSerializerTests.cs
mcs/class/System.XML/Test/XmlFiles/literal-data.xml

index 65b46f7c4e83338fb67ca085aa4446a05ab752c2..7873914d2dd6cd749069ba183539a1348fa46dbd 100644 (file)
@@ -20,10 +20,10 @@ endif
 PROFILE_ANY_MOBILE := $(filter monotouch monotouch_runtime monodroid xammac mobile mobile_static, $(PROFILE))
 
 LIB_REFS = System
-LIB_MCS_FLAGS = -r:$(corlib)  -nowarn:219,414,649,1717 -unsafe -d:ASYNC -d:DISABLE_CAS_USE
+LIB_MCS_FLAGS = -r:$(corlib)  -nowarn:219,414,0612,0642,649 -unsafe -d:ASYNC -d:DISABLE_CAS_USE -d:MONO_HYBRID_SYSTEM_XML
 
 ifeq (2.1, $(FRAMEWORK_VERSION))
-LIB_MCS_FLAGS += -d:AGCLR -d:NET_2_1_HACK -d:DISABLE_XSLT_COMPILER -d:DISABLE_XSLT_SCRIPT,MONO_HYBRID_SYSTEM_XML
+LIB_MCS_FLAGS += -unsafe -d:AGCLR -d:NET_2_1_HACK -d:DISABLE_XSLT_COMPILER -d:DISABLE_XSLT_SCRIPT
 endif
 TEST_MCS_FLAGS = $(LIB_MCS_FLAGS) -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll
 
index b3da6c153f9d0a3555b397fe7686981c7da75832..758481422cd4c06e87916ca017c7cc2b9a00d665 100644 (file)
@@ -6,7 +6,10 @@ Assembly/AssemblyInfo.cs
 Dummy.cs
 System.Xml.Res.cs
 System.Xml.Utils.Res.cs
+ReferenceSources/SpecifiedAccessor.cs
 ReferenceSources/ThisAssembly.cs
+ReferenceSources/TypeScope.cs
+ReferenceSources/Wsdl.cs
 ../../../external/referencesource/System.Data.SqlXml/System/Xml/Xsl/IlGen/GenerateHelper.cs
 ../../../external/referencesource/System.Data.SqlXml/System/Xml/Xsl/IlGen/IteratorDescriptor.cs
 ../../../external/referencesource/System.Data.SqlXml/System/Xml/Xsl/IlGen/OptimizerPatterns.cs
@@ -477,83 +480,13 @@ ReferenceSources/ThisAssembly.cs
 ../../../external/referencesource/System.Xml/System/Xml/Schema/XsdValidator.cs
 
 ../../../external/referencesource/System.Xml/System/Xml/Serialization/_Events.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/AppSettings.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/CodeExporter.cs
 ../../../external/referencesource/System.Xml/System/Xml/Serialization/CodeGenerationoptions.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/CodeGenerator.cs
 ../../../external/referencesource/System.Xml/System/Xml/Serialization/CodeIdentifier.cs
 ../../../external/referencesource/System.Xml/System/Xml/Serialization/CodeIdentifiers.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/Compilation.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/Compiler.cs
 ../../../external/referencesource/System.Xml/System/Xml/Serialization/ImportContext.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/indentedWriter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/IXmlSerializable.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/IXmlTextParser.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/Mappings.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/Models.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/NameTable.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/PrimitiveXmlSerializers.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SchemaImporter.cs
 ../../../external/referencesource/System.Xml/System/Xml/Serialization/SchemaObjectWriter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapAttributeAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapAttributeOverrides.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapAttributes.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapCodeExporter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapElementAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapEnumAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapIgnoreAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapIncludeAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapReflectionImporter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapSchemaExporter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapSchemaImporter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapSchemamember.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SoapTypeAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/SourceInfo.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/TypeExtensions.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/Types.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlAnyAttributeAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlAnyElementAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlAnyElementAttributes.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlArrayAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlArrayItemAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlArrayItemAttributes.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlAttributeAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlAttributeOverrides.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlAttributes.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlChoiceIdentifierAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlCodeExporter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlCountingReader.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/Xmlcustomformatter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlElementAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlElementAttributes.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlEnumAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlIgnoreAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlIncludeAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlMapping.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlMemberMapping.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlMembersMapping.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlNamespaceDeclarationsAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlReflectionImporter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlReflectionMember.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlRootAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSchemaExporter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSchemaImporter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSchemaProviderAttribute.cs
 ../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSchemas.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSerializationGeneratedCode.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSerializationILGen.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSerializationReader.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSerializationReaderILGen.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSerializationWriter.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSerializationWriterILGen.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSerializer.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSerializerAssemblyAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSerializerFactory.cs
 ../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSerializerNamespaces.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlSerializerVersionAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlTextAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlTypeAttribute.cs
-../../../external/referencesource/System.Xml/System/Xml/Serialization/XmlTypeMapping.cs
 
 ../../../external/referencesource/System.Xml/System/Xml/Serialization/Advanced/SchemaImporterExtension.cs
 
@@ -672,3 +605,82 @@ ReferenceSources/ThisAssembly.cs
 ../../../external/referencesource/System.Xml/System/Xml/Xslt/XsltException.cs
 ../../../external/referencesource/System.Xml/System/Xml/Xslt/XslTransform.cs
 ../../../external/referencesource/System.Xml/System/Xml/Xslt/XsltSettings.cs
+System.Xml.Serialization/CodeExporter.cs
+System.Xml.Serialization/ImportContext.cs
+System.Xml.Serialization/IXmlSerializable.cs
+System.Xml.Serialization/IXmlTextParser.cs
+System.Xml.Serialization/KeyHelper.cs
+System.Xml.Serialization/MapCodeGenerator.cs
+System.Xml.Serialization/ReflectionHelper.cs
+System.Xml.Serialization/SchemaImporter.cs
+System.Xml.Serialization/SchemaTypes.cs
+System.Xml.Serialization/SerializationCodeGeneratorConfiguration.cs
+System.Xml.Serialization/SerializationCodeGenerator.cs
+System.Xml.Serialization/SerializationSource.cs
+System.Xml.Serialization/SoapAttributeAttribute.cs
+System.Xml.Serialization/SoapAttributeOverrides.cs
+System.Xml.Serialization/SoapAttributes.cs
+System.Xml.Serialization/SoapCodeExporter.cs
+System.Xml.Serialization/SoapElementAttribute.cs
+System.Xml.Serialization/SoapEnumAttribute.cs
+System.Xml.Serialization/SoapIgnoreAttribute.cs
+System.Xml.Serialization/SoapIncludeAttribute.cs
+System.Xml.Serialization/SoapReflectionImporter.cs
+System.Xml.Serialization/SoapSchemaExporter.cs
+System.Xml.Serialization/SoapSchemaImporter.cs
+System.Xml.Serialization/SoapSchemaMember.cs
+System.Xml.Serialization/SoapTypeAttribute.cs
+System.Xml.Serialization/TypeData.cs
+System.Xml.Serialization/TypeMember.cs
+System.Xml.Serialization/TypeTranslator.cs
+System.Xml.Serialization/XmlAnyAttributeAttribute.cs
+System.Xml.Serialization/XmlAnyElementAttribute.cs
+System.Xml.Serialization/XmlAnyElementAttributes.cs
+System.Xml.Serialization/XmlArrayAttribute.cs
+System.Xml.Serialization/XmlArrayItemAttribute.cs
+System.Xml.Serialization/XmlArrayItemAttributes.cs
+System.Xml.Serialization/XmlAttributeAttribute.cs
+System.Xml.Serialization/XmlAttributeOverrides.cs
+System.Xml.Serialization/XmlAttributes.cs
+System.Xml.Serialization/XmlChoiceIdentifierAttribute.cs
+System.Xml.Serialization/XmlCodeExporter.cs
+System.Xml.Serialization/XmlCustomFormatter.cs
+System.Xml.Serialization/XmlDeserializationEvents.cs
+System.Xml.Serialization/XmlElementAttribute.cs
+System.Xml.Serialization/XmlElementAttributes.cs
+System.Xml.Serialization/XmlEnumAttribute.cs
+System.Xml.Serialization/XmlIgnoreAttribute.cs
+System.Xml.Serialization/XmlIncludeAttribute.cs
+System.Xml.Serialization/XmlMappingAccess.cs
+System.Xml.Serialization/XmlMapping.cs
+System.Xml.Serialization/XmlMemberMapping.cs
+System.Xml.Serialization/XmlMembersMapping.cs
+System.Xml.Serialization/XmlNamespaceDeclarationsAttribute.cs
+System.Xml.Serialization/XmlReflectionImporter.cs
+System.Xml.Serialization/XmlReflectionMember.cs
+System.Xml.Serialization/XmlRootAttribute.cs
+System.Xml.Serialization/XmlSchemaExporter.cs
+System.Xml.Serialization/XmlSchemaImporter.cs
+System.Xml.Serialization/XmlSchemaProviderAttribute.cs
+System.Xml.Serialization/XmlSerializationCollectionFixupCallback.cs
+System.Xml.Serialization/XmlSerializationFixupCallback.cs
+System.Xml.Serialization/XmlSerializationGeneratedCode.cs
+System.Xml.Serialization/XmlSerializationReadCallback.cs
+System.Xml.Serialization/XmlSerializationReader.cs
+System.Xml.Serialization/XmlSerializationReaderInterpreter.cs
+System.Xml.Serialization/XmlSerializationWriteCallback.cs
+System.Xml.Serialization/XmlSerializationWriter.cs
+System.Xml.Serialization/XmlSerializationWriterInterpreter.cs
+System.Xml.Serialization/XmlSerializerAssemblyAttribute.cs
+System.Xml.Serialization/XmlSerializer.cs
+System.Xml.Serialization/XmlSerializerFactory.cs
+System.Xml.Serialization/XmlSerializerImplementation.cs
+System.Xml.Serialization/XmlSerializerVersionAttribute.cs
+System.Xml.Serialization/XmlTextAttribute.cs
+System.Xml.Serialization/XmlTypeAttribute.cs
+System.Xml.Serialization/XmlTypeMapElementInfo.cs
+System.Xml.Serialization/XmlTypeMapMemberAttribute.cs
+System.Xml.Serialization/XmlTypeMapMember.cs
+System.Xml.Serialization/XmlTypeMapMemberElement.cs
+System.Xml.Serialization/XmlTypeMapMemberNamespaces.cs
+System.Xml.Serialization/XmlTypeMapping.cs
index 043c5107eb0dddef9d09e45da2d0ffc09dd0a72b..e05a22d7e91353f17f31437a23478e5c170b1a31 100644 (file)
@@ -286,17 +286,17 @@ namespace MonoTests.System.XmlSerialization
                        AssertionHelper.AssertEqualsArray ("t.ttList", exp.ttList.ToArray(), t.ttList.ToArray());
                        
                        Assert.IsNotNull (t.RoList, "t.RoList");
-//                     Assert.AreEqual (exp.RoList.Count, t.RoList.Count, "t.RoList.Count");
-                       for (int n=0; n<t.RoList.Count; n++)
+                       Assert.AreEqual (exp.RoList.Count, t.RoList.Count, "t.RoList.Count");
+                       for (int n=0; n<exp.RoList.Count; n++)
                                TestPart.AssertEquals ("t.RoList " + n, (TestPart)exp.RoList[n], (TestPart)t.RoList[n]);
                        
                        Assert.AreEqual (exp.struc.aa, t.struc.aa, "t.struc.aa");
                        Assert.AreSame (exp.struc.cc, t.struc.cc, "t.struc.cc");
 
-                       Assert.IsNull (t.multiList, "t.multiList");
-//                     Assert.AreEqual (exp.multiList.Length, t.multiList.Length, "t.multiList.Count");
-//                     for (int n=0; n<exp.multiList.Length; n++)
-//                             AssertionHelper.AssertEqualsArray ("t.multiList " + n, exp.multiList[n].ToArray(), t.multiList[n].ToArray());
+                       Assert.IsNotNull (t.multiList, "t.multiList");
+                       Assert.AreEqual (exp.multiList.Length, t.multiList.Length, "t.multiList.Count");
+                       for (int n=0; n<exp.multiList.Length; n++)
+                               AssertionHelper.AssertEqualsArray ("t.multiList " + n, exp.multiList[n].ToArray(), t.multiList[n].ToArray());
                        
                        Assert.AreEqual (exp.defElem, t.defElem, "t.defElem");
                        Assert.AreEqual (exp.defAttr, t.defAttr, "t.defAttr");
@@ -305,18 +305,18 @@ namespace MonoTests.System.XmlSerialization
 
                        Assert.AreEqual (exp.attqname, t.attqname, "t.attqname");
 
-                       Assert.IsNull (t.dbscontainer, "t.dbscontainer");
-//                     DblStringContainer tdbca = t.dbscontainer.at as DblStringContainer;
-//                     DblStringContainer expdbca = exp.dbscontainer.at as DblStringContainer;
-//                     Assert.IsNotNull (tdbca, "t.dbscontainer.at");
+                       Assert.IsNotNull (t.dbscontainer, "t.dbscontainer");
+                       DblStringContainer tdbca = t.dbscontainer.at as DblStringContainer;
+                       DblStringContainer expdbca = exp.dbscontainer.at as DblStringContainer;
+                       Assert.IsNotNull (tdbca, "t.dbscontainer.at");
                        
-//                     Assert.IsNotNull (tdbca, "t.dbscontainer.dbca");
-//                     AssertionHelper.AssertEqualsArray ("t.dbscontainer.at.doublestring", expdbca.doublestring, tdbca.doublestring);
+                       Assert.IsNotNull (tdbca, "t.dbscontainer.dbca");
+                       AssertionHelper.AssertEqualsArray ("t.dbscontainer.at.doublestring", expdbca.doublestring, tdbca.doublestring);
                        
-//                     AnotherTestPart tat = tdbca.at as AnotherTestPart;
-//                     AnotherTestPart expat = expdbca.at as AnotherTestPart;
-//                     Assert.IsNotNull (tat, "t.dbscontainer.dbca.at");
-//                     Assert.AreEqual (expat.lo, tat.lo, "t.dbscontainer.dbca.at.lo");
+                       AnotherTestPart tat = tdbca.at as AnotherTestPart;
+                       AnotherTestPart expat = expdbca.at as AnotherTestPart;
+                       Assert.IsNotNull (tat, "t.dbscontainer.dbca.at");
+                       Assert.AreEqual (expat.lo, tat.lo, "t.dbscontainer.dbca.at.lo");
                }
                
                void CheckParts (string id, TestPart[] exp, TestPart[] parts)
@@ -514,7 +514,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [SoapIgnore]
-               [XmlIgnore] // Causes NRE in System.Xml.Serialization.CodeGenerator.GetVariableType (System.Object var)
+//             [XmlIgnore]
                public ArrayList[] multiList;
 
                [SoapIgnore]
index 009bfb862a3c277b63cac95324ffe290ee165318..7c4295f4554b43da61f7878235eb627bf3b3e263 100644 (file)
@@ -163,7 +163,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
-               [ExpectedException (typeof (InvalidOperationException))]
+               [Category ("NotDotNet")]
                public void DeserializeArrayReferences ()
                {
                        string s = "<Sample xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">";
@@ -248,6 +248,7 @@ namespace MonoTests.System.XmlSerialization
                        ListDefaults d2 = (ListDefaults) Deserialize (typeof (ListDefaults), "<root/>");
 
                        Assert.IsNotNull (d2.list2, "#A1");
+                       Assert.IsNull (d2.list3, "#A2");
                        Assert.IsNull (d2.list4, "#A3");
                        Assert.IsNotNull (d2.list5, "#A4");
                        Assert.IsNotNull (d2.ed, "#A5");
@@ -256,6 +257,7 @@ namespace MonoTests.System.XmlSerialization
                        d2 = (ListDefaults) Deserialize (typeof (ListDefaults), "<root></root>");
 
                        Assert.IsNotNull (d2.list2, "#B1");
+                       Assert.IsNull (d2.list3, "#B2");
                        Assert.IsNull (d2.list4, "#B3");
                        Assert.IsNotNull (d2.list5, "#B4");
                        Assert.IsNotNull (d2.ed, "#B5");
@@ -817,6 +819,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
+               [ExpectedException (typeof (InvalidOperationException))]
                public void TestDeserializeObjectWithReadonlyNulCollection ()
                {
                        string s3 = "";
@@ -827,8 +830,7 @@ namespace MonoTests.System.XmlSerialization
                        s3 += " </Collection1>";
                        s3 += "</Container>";
 
-                       var obj = (ObjectWithReadonlyNulCollection) Deserialize (typeof (ObjectWithReadonlyNulCollection), s3);
-                       Assert.IsNull (obj.Collection1);
+                       Deserialize (typeof (ObjectWithReadonlyNulCollection), s3);
                }
 
                [Test]
@@ -1058,7 +1060,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
-               [Category ("NotWorking")] // MS.NET results in compilation error (probably it generates bogus source.)
+               [Category ("NotDotNet")] // MS.NET results in compilation error (probably it generates bogus source.)
                public void TestDeserialize_Field_Encoded ()
                {
                        Field_Encoded f = null;
@@ -1545,12 +1547,11 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
-               [Category ("MobileNotWorking")]
                public void NotExactDateParse ()
                {
                        XmlSerializer xs = new XmlSerializer (typeof (NotExactDateParseClass));
                        NotExactDateParseClass o = (NotExactDateParseClass) xs.Deserialize (new StringReader ("<NotExactDateParseClass xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"><SomeDate xsi:type=\"xsd:date\">2012-02-05-09:00</SomeDate></NotExactDateParseClass>"));
-                       Assert.AreEqual (new DateTime (2012,2,5,10,0,0), o.SomeDate);
+                       Assert.AreEqual (new DateTime (2012,2,5), o.SomeDate);
                }
 
 
index a517c856d78a25b50366dfbab8c4eba204d2df29..88bf4a643de85e8f216941ab1664b69d6919d918 100644 (file)
@@ -20,11 +20,15 @@ namespace MonoTests.System.XmlSerialization
        public class SoapAttributesTests
        {
                [Test]
+               // in .NET 2.0, SoapDefaultValue should be null by default, but we need
+               // more tests before making this change
+               [Category ("NotDotNet")]
                public void Defaults ()
                {
                        SoapAttributes atts = new SoapAttributes ();
                        Assert.IsNull (atts.SoapAttribute, "#1");
-                       Assert.IsNull (atts.SoapDefaultValue, "#2");
+                       Assert.IsNotNull (atts.SoapDefaultValue, "#2");
+                       Assert.AreEqual (DBNull.Value, atts.SoapDefaultValue, "#3");
                        Assert.IsNull (atts.SoapElement, "#4");
                        Assert.IsNull (atts.SoapEnum, "#5");
                        Assert.AreEqual (false, atts.SoapIgnore, "#6");
index ef42de89b6c37dee551cb852a74cdc862f57271f..9cf534f2012fd87cf1d55ac7ac0238af9e865885 100644 (file)
@@ -74,7 +74,9 @@ namespace MonoTests.System.XmlSerialization
                        Assert.AreEqual (0, atts.XmlArrayItems.Count, "#6");
                        Assert.IsNull (atts.XmlAttribute, "#7");
                        Assert.IsNull (atts.XmlChoiceIdentifier, "#8");
-                       Assert.IsNull (atts.XmlDefaultValue, "#9");
+                       Assert.IsNotNull (atts.XmlDefaultValue, "#9");
+                       // DBNull??
+                       Assert.AreEqual (DBNull.Value, atts.XmlDefaultValue, "#10");
                        Assert.IsNotNull (atts.XmlElements, "#11");
                        Assert.AreEqual (0, atts.XmlElements.Count, "#12");
                        Assert.IsNull (atts.XmlEnum, "#13");
index 7b5a1c766871e94796da31a00dc36949d985c030..c83ef788f469bf2dad05943c681774d9dc06d85b 100644 (file)
@@ -455,6 +455,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
+               [Ignore ("Additional namespace prefixes are added")]
                public void TestWritePotentiallyReferencingElement ()
                {
                        XmlSerializarionWriterTester xsw = new XmlSerializarionWriterTester ();
@@ -496,6 +497,13 @@ namespace MonoTests.System.XmlSerialization
                                "</q3:Array>", XmlSchemaNamespace, SoapEncodingNamespace), xsw.Content, "#5");
                }
 
+               [Test]
+               public void TestWriteSerializable()
+               {
+                       // FIXME
+                       //Assert.AreEqual (, "");
+               }
+
                [Test]
                public void TestWriteStartDocument()
                {
@@ -828,6 +836,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
+               [Category ("NotWorking")] // enum name is output instead of integral value
                public void TestWriteTypedPrimitive_Enum ()
                {
                        XmlSerializarionWriterTester xsw = new XmlSerializarionWriterTester ();
@@ -875,6 +884,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
+               [Category ("NotWorking")] // InvalidOperationException is thrown
                public void TestWriteTypedPrimitive_Enum_XsiType ()
                {
                        XmlSerializarionWriterTester xsw = new XmlSerializarionWriterTester ();
@@ -1573,16 +1583,10 @@ namespace MonoTests.System.XmlSerialization
                        ser.Serialize (sw, d);
                        string str = sw.ToString ();
 
-                       var expected =
-"<?xml version=\"1.0\" encoding=\"utf-16\"?>" + Environment.NewLine +
-"<root xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">" + Environment.NewLine +
-"  <MyTime>10:00:00.0000000+02:00</MyTime>" + Environment.NewLine +
-"  <MyTimeNullable>10:00:00.0000000+02:00</MyTimeNullable>" + Environment.NewLine +
-"  <MyDate>2012-01-03</MyDate>" + Environment.NewLine +
-"  <MyDateNullable>2012-01-03</MyDateNullable>" + Environment.NewLine +
-"</root>";
-
-                       Assert.AreEqual (expected, str);
+                       Assert.IsTrue (str.IndexOf ("<MyTime>10:00:00</MyTime>") != -1, "Time");
+                       Assert.IsTrue (str.IndexOf ("<MyTimeNullable>10:00:00</MyTimeNullable>") != -1, "Nullable Time");
+                       Assert.IsTrue (str.IndexOf ("<MyDate>2012-01-03</MyDate>") != -1, "Date");
+                       Assert.IsTrue (str.IndexOf ("<MyDateNullable>2012-01-03</MyDateNullable>") != -1, "Nullable Datwe");
                }
                
                
index 597acd1df54f69d3d2b8970b0e97d2f5df2e16c6..1a5f6e8f26cb5a76ee01a7104fc8e2520fbe6494 100644 (file)
@@ -465,7 +465,7 @@ namespace MonoTests.System.Xml.TestClasses
 
                public ArrayList list2;
 
-//             public MyList list3;
+               public MyList list3;
 
                public string[] list4;
 
index 712e9d1543adeb5f9812038200f2403f4cb1bdc3..2569fd2e694bb55c6134c16c17290dc23303ae76 100644 (file)
@@ -278,6 +278,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
+               [Category ("NotWorking")]
                public void TestSerializeEnumeration_FromValue_Encoded ()
                {
                        SerializeEncoded ((int) SimpleEnumeration.SECOND, typeof (SimpleEnumeration));
@@ -375,6 +376,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
+               [Category ("NotWorking")]
                public void TestSerializeEnumDefaultValue_Encoded ()
                {
                        SerializeEncoded (new EnumDefaultValue ());
@@ -727,7 +729,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
-               [Category ("NotWorking")] // MS bug
+               [Category ("NotDotNet")] // MS bug
                public void TestSerializeField_Encoded ()
                {
                        Field_Encoded f = new Field_Encoded ();
@@ -1552,6 +1554,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
+               [Category ("NotWorking")] // SerializationCodeGenerator outputs wrong xsi:type for flagencoded in #C1
                public void TestSerializeDefaultValueAttribute_Encoded ()
                {
                        SoapAttributeOverrides overrides = new SoapAttributeOverrides ();
@@ -1749,6 +1752,7 @@ namespace MonoTests.System.XmlSerialization
 
                [Test]
                [ExpectedException (typeof (InvalidOperationException))]
+               [Category ("NotWorking")]
                public void TestSerializeXmlNodeArrayIncludesAttribute ()
                {
                        XmlDocument doc = new XmlDocument ();
@@ -2231,12 +2235,14 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
+               [ExpectedException (typeof (InvalidOperationException))]
                public void XmlArrayAttributeUnqualifiedWithNamespace ()
                {
                        new XmlSerializer (typeof (XmlArrayUnqualifiedWithNamespace));
                }
 
                [Test]
+               [ExpectedException (typeof (InvalidOperationException))]
                public void XmlArrayItemAttributeUnqualifiedWithNamespace ()
                {
                        new XmlSerializer (typeof (XmlArrayItemUnqualifiedWithNamespace));
@@ -3352,7 +3358,7 @@ namespace MonoTests.System.XmlSerialization
                }
 
                [Test]
-               [Category("NotWorking")]
+               [Category("NotDotNet")]
                public void ShouldSerializeGeneric ()
                {
                        var ser = new XmlSerializer (typeof (ClassWithShouldSerializeGeneric));
@@ -3537,4 +3543,5 @@ namespace MonoTests.System.XmlSerialization
                public string SecondMember { get; set; }
        }
 #endregion
+
 }
index 7900290505ffd7deddff2b0a14ba30117c11a126..b1104a1fcec1b12b45657083fdc19ffa7b2d4848 100644 (file)
   <ttList>
     <anyType xsi:type="xsd:string">two</anyType>
     <anyType xsi:type="xsd:string">strings</anyType>
-  </ttList>aa<xmltext>33</xmltext>bb<xmltext>776</xmltext><special>
+  </ttList>
+  <multiList>
+    <ArrayOfAnyType>
+      <anyType xsi:type="xsd:int">22</anyType>
+      <anyType xsi:type="xsd:int">33</anyType>
+    </ArrayOfAnyType>
+    <ArrayOfAnyType>
+      <anyType xsi:type="xsd:int">888</anyType>
+      <anyType xsi:type="xsd:int">999</anyType>
+    </ArrayOfAnyType>
+  </multiList>aa<xmltext>33</xmltext>bb<xmltext>776</xmltext><special>
     <data>
       <two>2</two>
       <one>1</one>