Skip to content

Commit

Permalink
Expose NamespacePrefix on Generator
Browse files Browse the repository at this point in the history
Increase coverage
  • Loading branch information
Michael Ganss committed Nov 5, 2015
1 parent 6eb98e9 commit 7749608
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 13 deletions.
23 changes: 10 additions & 13 deletions XmlSchemaClassGenerator.Tests/XmlTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -35,25 +35,17 @@ private Assembly Compile(string name, string pattern, Generator generatorPrototy
{
GenerateNullables = true,
IntegerDataType = typeof(int),
DataAnnotationMode = DataAnnotationMode.Partial,
DataAnnotationMode = DataAnnotationMode.All,
GenerateDesignerCategoryAttribute = false,
EntityFramework = false,
GenerateInterfaces = true
GenerateInterfaces = true,
NamespacePrefix = name,
};

var gen = new Generator
{
OutputFolder = outputFolder,
NamespaceProvider = new NamespaceProvider
{
GenerateNamespace = key =>
{
var xn = key.XmlSchemaNamespace;
var nm = string.Join(".", xn.Split('/').Where(p => Regex.IsMatch(p, @"^[A-Za-z]+$") && p != "schema")
.Select(n => Generator.ToTitleCase(n, NamingScheme.PascalCase)));
return name + (string.IsNullOrEmpty(nm) ? "" : ("." + nm));
}
},
NamespaceProvider = generatorPrototype.NamespaceProvider,
Log = f => cs.Add(f),
GenerateNullables = generatorPrototype.GenerateNullables,
IntegerDataType = generatorPrototype.IntegerDataType,
Expand Down Expand Up @@ -106,7 +98,12 @@ public void CanDeserializeSampleXml()
TestSamples("Client", ClientPattern);
Compile("IS24RestApi", IS24Pattern);
TestSamples("IS24RestApi", IS24Pattern);
Compile("Wadl", WadlPattern, new Generator { EntityFramework = true, DataAnnotationMode = DataAnnotationMode.All });
Compile("Wadl", WadlPattern, new Generator
{
EntityFramework = true,
DataAnnotationMode = DataAnnotationMode.All,
NamespaceProvider = new Dictionary<NamespaceKey, string> { { new NamespaceKey("http://wadl.dev.java.net/2009/02"), "Wadl" } }.ToNamespaceProvider(new GeneratorConfiguration { NamespacePrefix = "Wadl" }.NamespaceProvider.GenerateNamespace)
});
TestSamples("Wadl", WadlPattern);
}

Expand Down
6 changes: 6 additions & 0 deletions XmlSchemaClassGenerator/Generator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,12 @@ public NamespaceProvider NamespaceProvider
set { _configuration.NamespaceProvider = value; }
}

public string NamespacePrefix
{
get { return _configuration.NamespacePrefix; }
set { _configuration.NamespacePrefix = value; }
}

public string OutputFolder
{
get { return _configuration.OutputFolder; }
Expand Down

0 comments on commit 7749608

Please sign in to comment.