From 59ffa86b7d62ddc52ec813fb65c47f812aeded66 Mon Sep 17 00:00:00 2001 From: Sean Hall Date: Mon, 6 Apr 2020 14:06:29 +1000 Subject: Try to fix build flakiness with Example.Extension. Add failing test for the TableDefinition overload of EnsureTable. --- src/test/Example.Extension/Example.Extension.csproj | 2 +- src/test/Example.Extension/ExampleCompilerExtension.cs | 10 ++++++++++ src/test/Example.Extension/ExampleTableDefinitions.cs | 10 ++++++++++ 3 files changed, 21 insertions(+), 1 deletion(-) (limited to 'src/test/Example.Extension') diff --git a/src/test/Example.Extension/Example.Extension.csproj b/src/test/Example.Extension/Example.Extension.csproj index d9ac2509..7f375cb6 100644 --- a/src/test/Example.Extension/Example.Extension.csproj +++ b/src/test/Example.Extension/Example.Extension.csproj @@ -33,7 +33,7 @@ - + diff --git a/src/test/Example.Extension/ExampleCompilerExtension.cs b/src/test/Example.Extension/ExampleCompilerExtension.cs index e821b7b6..9f0abd4c 100644 --- a/src/test/Example.Extension/ExampleCompilerExtension.cs +++ b/src/test/Example.Extension/ExampleCompilerExtension.cs @@ -23,6 +23,10 @@ namespace Example.Extension case "Fragment": switch (element.Name.LocalName) { + case "ExampleEnsureTable": + this.ParseExampleEnsureTableElement(intermediate, section, element); + processed = true; + break; case "ExampleSearch": this.ParseExampleSearchElement(intermediate, section, element); processed = true; @@ -93,6 +97,12 @@ namespace Example.Extension } } + private void ParseExampleEnsureTableElement(Intermediate intermediate, IntermediateSection section, XElement element) + { + var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); + this.ParseHelper.EnsureTable(section, sourceLineNumbers, ExampleTableDefinitions.NotInAll); + } + private void ParseExampleSearchElement(Intermediate intermediate, IntermediateSection section, XElement element) { var sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(element); diff --git a/src/test/Example.Extension/ExampleTableDefinitions.cs b/src/test/Example.Extension/ExampleTableDefinitions.cs index 124e2406..3532ffc3 100644 --- a/src/test/Example.Extension/ExampleTableDefinitions.cs +++ b/src/test/Example.Extension/ExampleTableDefinitions.cs @@ -17,6 +17,16 @@ namespace Example.Extension tupleIdIsPrimaryKey: true ); + public static readonly TableDefinition NotInAll = new TableDefinition( + "TableDefinitionNotExposedByExtension", + new[] + { + new ColumnDefinition("Example", ColumnType.String, 72, true, false, ColumnCategory.Identifier), + new ColumnDefinition("Value", ColumnType.String, 0, false, false, ColumnCategory.Formatted), + }, + tupleIdIsPrimaryKey: true + ); + public static readonly TableDefinition[] All = new[] { ExampleTable }; } } -- cgit v1.2.3-55-g6feb