Martin Baulig eb285f121c Merge branch 'master' into baulig 13 years ago
..
Resources eb285f121c Merge branch 'master' into baulig 13 years ago
AssemblyInfo.cs 831ce5fccc [WCF]: New WsdlImporter nunit tests and sample wsdl docs. 13 years ago
BindingTestAssertions.cs eb285f121c Merge branch 'master' into baulig 13 years ago
ExportTests.cs c1b505c0ca [WCF]: Implement and improve missing WsdlExporter pieces. 13 years ago
ExportUtil.cs 831ce5fccc [WCF]: New WsdlImporter nunit tests and sample wsdl docs. 13 years ago
ExportUtil.csproj 831ce5fccc [WCF]: New WsdlImporter nunit tests and sample wsdl docs. 13 years ago
ImportTests.cs eb285f121c Merge branch 'master' into baulig 13 years ago
ImportTests_CreateMetadata.cs c1b505c0ca [WCF]: Implement and improve missing WsdlExporter pieces. 13 years ago
ImportTests_LoadMetadata.cs b983c5c7fa [WCF]: Support embedded <wsp:Policy> elements. 13 years ago
ImportTests_RoundTrip.cs c1b505c0ca [WCF]: Implement and improve missing WsdlExporter pieces. 13 years ago
MetadataSamples.cs eb285f121c Merge branch 'master' into baulig 13 years ago
MetadataTests.csproj eb285f121c Merge branch 'master' into baulig 13 years ago
MetadataTests.sln 831ce5fccc [WCF]: New WsdlImporter nunit tests and sample wsdl docs. 13 years ago
MiscImportTests.cs 7335a66b27 [WCF]: Add and improve MetadataImport tests. 13 years ago
README.txt 831ce5fccc [WCF]: New WsdlImporter nunit tests and sample wsdl docs. 13 years ago
TestContext.cs eb285f121c Merge branch 'master' into baulig 13 years ago
TestLabel.cs 831ce5fccc [WCF]: New WsdlImporter nunit tests and sample wsdl docs. 13 years ago

README.txt

Metadata Tests
==============

These tests can be run either as part of System.ServiceModel_test_.dll
or as the stand-alone MetadataTests.dll, which bundles all the XML files as
embedded resources.

Generating and updating the XML Samples:
========================================

Mono's WsdlExporter is not yet capable of generating the wsdl files that
are used as test input here.

To generate the XML files, compile the ExportUtil.exe tool either by using the
ExportUtil.csproj or compiling it manually:

mcs -r:System.ServiceModel -r:System.Web.Services ExportUtil.cs MetadataSamples.cs TestContext.cs

Then copy the binary to a Windows machine and run it there. This will generate a bunch of
.xml files. Run dos2unix on them and copy them into the Resources/ subdirectory.

Adding new Tests:
=================

To add a new test, add a method with the [MetadataaSample] attribute to
MetadataSamples.cs, like this:

[MetadataSample]
public static MetadataSet MyXML ()
{
....
}

You may also specify a name:

[MetadataSample ("MyXML")]
public static MetadataSet RandomMethodName ()
{
}

Re-compile ExportUtil.exe and it will produce a new 'MyXML.xml' file.

Then write a new test case:

[Test]
public void MyXML ()
{
var doc = TestContext.GetMetadata ("MyXML");
... test it here
}

The idea behind the 'TestContext' class is to allow "self-hosting" at a
later time, ie. use Mono's WsdlExporter to generate the metadata instead
of loading the on-disk file without having to modify a bunch of tests.