This is an automated email from the ASF dual-hosted git repository.
hansva pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hop.git
The following commit(s) were added to refs/heads/main by this push:
new 124c36369d Add some extra tests, fixes #6072 (#6081)
124c36369d is described below
commit 124c36369d799cef1c9a8edbb70d94ee6b2ce207
Author: Hans Van Akelyen <[email protected]>
AuthorDate: Thu Nov 27 09:47:36 2025 +0100
Add some extra tests, fixes #6072 (#6081)
---
.../samples/read-samples-build-hop-run.hpl | 4 +
...80-test-duplicate-field-logic-database-join.hpl | 159 ++++++++++++++++++
.../transforms/0080-test-duplicate-field-logic.hpl | 182 +++++++++++++++++++++
...n-check-duplicate-field-logic-database-join.csv | 3 +
.../golden-check-duplicate-field-logic.csv | 5 +
.../main-0080-test-duplicate-field-logic.hwf | 83 ++++++++++
...-check-duplicate-field-logic-database-join.json | 72 ++++++++
.../golden-check-duplicate-field-logic.json | 72 ++++++++
.../0080-test-duplicate-field-logic UNIT.json | 63 +++++++
...t-duplicate-field-logic-database-join UNIT.json | 63 +++++++
10 files changed, 706 insertions(+)
diff --git a/integration-tests/samples/read-samples-build-hop-run.hpl
b/integration-tests/samples/read-samples-build-hop-run.hpl
index 997244bb13..ca8be57ac2 100644
--- a/integration-tests/samples/read-samples-build-hop-run.hpl
+++ b/integration-tests/samples/read-samples-build-hop-run.hpl
@@ -639,6 +639,10 @@ var hop_run_cmd = './hop-run.sh -j samples -r ' +
run_config + ' -f ' + filename
<item>columns-exist-in-a-table.hwf</item>
<item>Is intended to fail.</item>
</line>
+ <line>
+ <item>sample_pipeline_resolver</item>
+ <item>Is used by another transform</item>
+ </line>
</data>
<fields>
<field>
diff --git
a/integration-tests/transforms/0080-test-duplicate-field-logic-database-join.hpl
b/integration-tests/transforms/0080-test-duplicate-field-logic-database-join.hpl
new file mode 100644
index 0000000000..ff24c27c5f
--- /dev/null
+++
b/integration-tests/transforms/0080-test-duplicate-field-logic-database-join.hpl
@@ -0,0 +1,159 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+<pipeline>
+ <info>
+ <name>0080-test-duplicate-field-logic-database-join</name>
+ <name_sync_with_filename>Y</name_sync_with_filename>
+ <description/>
+ <extended_description/>
+ <pipeline_version/>
+ <pipeline_type>Normal</pipeline_type>
+ <parameters>
+ </parameters>
+ <capture_transform_performance>N</capture_transform_performance>
+
<transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
+
<transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
+ <created_user>-</created_user>
+ <created_date>2025/06/27 14:40:26.176</created_date>
+ <modified_user>-</modified_user>
+ <modified_date>2025/06/27 14:40:26.176</modified_date>
+ </info>
+ <notepads>
+ </notepads>
+ <order>
+ <hop>
+ <from>get field test</from>
+ <to>join same field</to>
+ <enabled>Y</enabled>
+ </hop>
+ <hop>
+ <from>join same field</from>
+ <to>Metadata structure of stream</to>
+ <enabled>Y</enabled>
+ </hop>
+ <hop>
+ <from>Metadata structure of stream</from>
+ <to>Dummy (do nothing)</to>
+ <enabled>Y</enabled>
+ </hop>
+ </order>
+ <transform>
+ <name>Dummy (do nothing)</name>
+ <type>Dummy</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <attributes/>
+ <GUI>
+ <xloc>784</xloc>
+ <yloc>96</yloc>
+ </GUI>
+ </transform>
+ <transform>
+ <name>Metadata structure of stream</name>
+ <type>TransformMetaStructure</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <commentsFieldname>Comments</commentsFieldname>
+ <fieldFieldname>Fieldname</fieldFieldname>
+ <includeCommentsField>Y</includeCommentsField>
+ <includeFieldnameField>Y</includeFieldnameField>
+ <includeLengthField>Y</includeLengthField>
+ <includeMaskField>Y</includeMaskField>
+ <includeOriginField>Y</includeOriginField>
+ <includePositionField>Y</includePositionField>
+ <includePrecisionField>Y</includePrecisionField>
+ <includeTypeField>Y</includeTypeField>
+ <lengthFieldname>Length</lengthFieldname>
+ <maskFieldname>FormatMask</maskFieldname>
+ <originFieldname>Origin</originFieldname>
+ <outputRowcount>N</outputRowcount>
+ <positionFieldname>Position</positionFieldname>
+ <precisionFieldname>Precision</precisionFieldname>
+ <typeFieldname>Type</typeFieldname>
+ <attributes/>
+ <GUI>
+ <xloc>576</xloc>
+ <yloc>96</yloc>
+ </GUI>
+ </transform>
+ <transform>
+ <name>get field test</name>
+ <type>TableInput</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <connection>h2</connection>
+ <execute_each_row>N</execute_each_row>
+ <limit>0</limit>
+ <sql>select 'testString' as test</sql>
+ <variables_active>N</variables_active>
+ <attributes/>
+ <GUI>
+ <xloc>192</xloc>
+ <yloc>96</yloc>
+ </GUI>
+ </transform>
+ <transform>
+ <name>join same field</name>
+ <type>DBJoin</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <cache>N</cache>
+ <cache_size>0</cache_size>
+ <connection>h2</connection>
+ <outer_join>N</outer_join>
+ <parameter>
+</parameter>
+ <replace_vars>N</replace_vars>
+ <rowlimit>0</rowlimit>
+ <sql>select 'testString' as test</sql>
+ <attributes/>
+ <GUI>
+ <xloc>400</xloc>
+ <yloc>96</yloc>
+ </GUI>
+ </transform>
+ <transform_error_handling>
+ </transform_error_handling>
+ <attributes/>
+</pipeline>
diff --git a/integration-tests/transforms/0080-test-duplicate-field-logic.hpl
b/integration-tests/transforms/0080-test-duplicate-field-logic.hpl
new file mode 100644
index 0000000000..a79b8849c6
--- /dev/null
+++ b/integration-tests/transforms/0080-test-duplicate-field-logic.hpl
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+<pipeline>
+ <info>
+ <name>0080-test-duplicate-field-logic</name>
+ <name_sync_with_filename>Y</name_sync_with_filename>
+ <description/>
+ <extended_description/>
+ <pipeline_version/>
+ <pipeline_type>Normal</pipeline_type>
+ <parameters>
+ </parameters>
+ <capture_transform_performance>N</capture_transform_performance>
+
<transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
+
<transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
+ <created_user>-</created_user>
+ <created_date>2025/06/27 14:40:26.176</created_date>
+ <modified_user>-</modified_user>
+ <modified_date>2025/06/27 14:40:26.176</modified_date>
+ </info>
+ <notepads>
+ </notepads>
+ <order>
+ <hop>
+ <from>generate single row and field</from>
+ <to>add same field multiple times</to>
+ <enabled>Y</enabled>
+ </hop>
+ <hop>
+ <from>add same field multiple times</from>
+ <to>Metadata structure of stream</to>
+ <enabled>Y</enabled>
+ </hop>
+ <hop>
+ <from>Metadata structure of stream</from>
+ <to>Dummy (do nothing)</to>
+ <enabled>Y</enabled>
+ </hop>
+ </order>
+ <transform>
+ <name>Metadata structure of stream</name>
+ <type>TransformMetaStructure</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <commentsFieldname>Comments</commentsFieldname>
+ <fieldFieldname>Fieldname</fieldFieldname>
+ <includeCommentsField>Y</includeCommentsField>
+ <includeFieldnameField>Y</includeFieldnameField>
+ <includeLengthField>Y</includeLengthField>
+ <includeMaskField>Y</includeMaskField>
+ <includeOriginField>Y</includeOriginField>
+ <includePositionField>Y</includePositionField>
+ <includePrecisionField>Y</includePrecisionField>
+ <includeTypeField>Y</includeTypeField>
+ <lengthFieldname>Length</lengthFieldname>
+ <maskFieldname>FormatMask</maskFieldname>
+ <originFieldname>Origin</originFieldname>
+ <outputRowcount>N</outputRowcount>
+ <positionFieldname>Position</positionFieldname>
+ <precisionFieldname>Precision</precisionFieldname>
+ <typeFieldname>Type</typeFieldname>
+ <attributes/>
+ <GUI>
+ <xloc>608</xloc>
+ <yloc>112</yloc>
+ </GUI>
+ </transform>
+ <transform>
+ <name>add same field multiple times</name>
+ <type>Constant</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <fields>
+ <field>
+ <length>-1</length>
+ <name>field</name>
+ <precision>-1</precision>
+ <set_empty_string>N</set_empty_string>
+ <type>String</type>
+ </field>
+ <field>
+ <length>-1</length>
+ <name>field</name>
+ <precision>-1</precision>
+ <set_empty_string>N</set_empty_string>
+ <type>String</type>
+ </field>
+ <field>
+ <length>-1</length>
+ <name>field</name>
+ <precision>-1</precision>
+ <set_empty_string>N</set_empty_string>
+ <type>String</type>
+ </field>
+ </fields>
+ <attributes/>
+ <GUI>
+ <xloc>384</xloc>
+ <yloc>112</yloc>
+ </GUI>
+ </transform>
+ <transform>
+ <name>generate single row and field</name>
+ <type>RowGenerator</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <fields>
+ <field>
+ <length>-1</length>
+ <name>field</name>
+ <precision>-1</precision>
+ <set_empty_string>N</set_empty_string>
+ <type>String</type>
+ </field>
+ </fields>
+ <interval_in_ms>5000</interval_in_ms>
+ <last_time_field>FiveSecondsAgo</last_time_field>
+ <limit>1</limit>
+ <never_ending>N</never_ending>
+ <row_time_field>now</row_time_field>
+ <attributes/>
+ <GUI>
+ <xloc>176</xloc>
+ <yloc>112</yloc>
+ </GUI>
+ </transform>
+ <transform>
+ <name>Dummy (do nothing)</name>
+ <type>Dummy</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <attributes/>
+ <GUI>
+ <xloc>800</xloc>
+ <yloc>112</yloc>
+ </GUI>
+ </transform>
+ <transform_error_handling>
+ </transform_error_handling>
+ <attributes/>
+</pipeline>
diff --git
a/integration-tests/transforms/datasets/golden-check-duplicate-field-logic-database-join.csv
b/integration-tests/transforms/datasets/golden-check-duplicate-field-logic-database-join.csv
new file mode 100644
index 0000000000..8b6912b8b4
--- /dev/null
+++
b/integration-tests/transforms/datasets/golden-check-duplicate-field-logic-database-join.csv
@@ -0,0 +1,3 @@
+Position,Fieldname,Comments,Type,Length,Precision,FormatMask,Origin
+1,TEST,TEST,String,10,-1,,get field test
+2,TEST_1,TEST,String,10,-1,,join same field
diff --git
a/integration-tests/transforms/datasets/golden-check-duplicate-field-logic.csv
b/integration-tests/transforms/datasets/golden-check-duplicate-field-logic.csv
new file mode 100644
index 0000000000..4bec4e3c9e
--- /dev/null
+++
b/integration-tests/transforms/datasets/golden-check-duplicate-field-logic.csv
@@ -0,0 +1,5 @@
+Position,Fieldname,Comments,Type,Length,Precision,FormatMask,Origin
+1,field,,String,-1,-1,,generate single row and field
+2,field_1,,String,-1,-1,,add same field multiple times
+3,field_2,,String,-1,-1,,add same field multiple times
+4,field_3,,String,-1,-1,,add same field multiple times
diff --git
a/integration-tests/transforms/main-0080-test-duplicate-field-logic.hwf
b/integration-tests/transforms/main-0080-test-duplicate-field-logic.hwf
new file mode 100644
index 0000000000..ab753791d9
--- /dev/null
+++ b/integration-tests/transforms/main-0080-test-duplicate-field-logic.hwf
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+<workflow>
+ <name>main-0080-test-duplicate-field-logic</name>
+ <name_sync_with_filename>Y</name_sync_with_filename>
+ <description/>
+ <extended_description/>
+ <workflow_version/>
+ <created_user>-</created_user>
+ <created_date>2025/06/06 13:53:26.041</created_date>
+ <modified_user>-</modified_user>
+ <modified_date>2025/06/06 13:53:26.041</modified_date>
+ <parameters>
+ </parameters>
+ <actions>
+ <action>
+ <name>Start</name>
+ <description/>
+ <type>SPECIAL</type>
+ <attributes/>
+ <DayOfMonth>1</DayOfMonth>
+ <doNotWaitOnFirstExecution>N</doNotWaitOnFirstExecution>
+ <hour>12</hour>
+ <intervalMinutes>60</intervalMinutes>
+ <intervalSeconds>0</intervalSeconds>
+ <minutes>0</minutes>
+ <repeat>N</repeat>
+ <schedulerType>0</schedulerType>
+ <weekDay>1</weekDay>
+ <parallel>N</parallel>
+ <xloc>64</xloc>
+ <yloc>64</yloc>
+ <attributes_hac/>
+ </action>
+ <action>
+ <name>Run Pipeline Unit Tests</name>
+ <description/>
+ <type>RunPipelineTests</type>
+ <attributes/>
+ <test_names>
+ <test_name>
+ <name>0080-test-duplicate-field-logic UNIT</name>
+ </test_name>
+ <test_name>
+ <name>0080-test-duplicate-field-logic-database-join UNIT</name>
+ </test_name>
+ </test_names>
+ <parallel>N</parallel>
+ <xloc>288</xloc>
+ <yloc>64</yloc>
+ <attributes_hac/>
+ </action>
+ </actions>
+ <hops>
+ <hop>
+ <from>Start</from>
+ <to>Run Pipeline Unit Tests</to>
+ <enabled>Y</enabled>
+ <evaluation>Y</evaluation>
+ <unconditional>Y</unconditional>
+ </hop>
+ </hops>
+ <notepads>
+ </notepads>
+ <attributes/>
+</workflow>
diff --git
a/integration-tests/transforms/metadata/dataset/golden-check-duplicate-field-logic-database-join.json
b/integration-tests/transforms/metadata/dataset/golden-check-duplicate-field-logic-database-join.json
new file mode 100644
index 0000000000..eb9c29f7fd
--- /dev/null
+++
b/integration-tests/transforms/metadata/dataset/golden-check-duplicate-field-logic-database-join.json
@@ -0,0 +1,72 @@
+{
+ "base_filename": "golden-check-duplicate-field-logic-database-join.csv",
+ "name": "golden-check-duplicate-field-logic-database-join",
+ "description": "",
+ "dataset_fields": [
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 5,
+ "field_precision": 0,
+ "field_name": "Position",
+ "field_format": "####0;-####0"
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 2,
+ "field_precision": -1,
+ "field_name": "Fieldname",
+ "field_format": ""
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 2,
+ "field_precision": -1,
+ "field_name": "Comments",
+ "field_format": ""
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 2,
+ "field_precision": -1,
+ "field_name": "Type",
+ "field_format": ""
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 5,
+ "field_precision": 0,
+ "field_name": "Length",
+ "field_format": "####0;-####0"
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 5,
+ "field_precision": 0,
+ "field_name": "Precision",
+ "field_format": "####0;-####0"
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 2,
+ "field_precision": -1,
+ "field_name": "FormatMask",
+ "field_format": ""
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 2,
+ "field_precision": -1,
+ "field_name": "Origin",
+ "field_format": ""
+ }
+ ],
+ "folder_name": ""
+}
\ No newline at end of file
diff --git
a/integration-tests/transforms/metadata/dataset/golden-check-duplicate-field-logic.json
b/integration-tests/transforms/metadata/dataset/golden-check-duplicate-field-logic.json
new file mode 100644
index 0000000000..3cd12363ba
--- /dev/null
+++
b/integration-tests/transforms/metadata/dataset/golden-check-duplicate-field-logic.json
@@ -0,0 +1,72 @@
+{
+ "base_filename": "golden-check-duplicate-field-logic.csv",
+ "name": "golden-check-duplicate-field-logic",
+ "description": "",
+ "dataset_fields": [
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 5,
+ "field_precision": 0,
+ "field_name": "Position",
+ "field_format": "####0;-####0"
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 2,
+ "field_precision": -1,
+ "field_name": "Fieldname",
+ "field_format": ""
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 2,
+ "field_precision": -1,
+ "field_name": "Comments",
+ "field_format": ""
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 2,
+ "field_precision": -1,
+ "field_name": "Type",
+ "field_format": ""
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 5,
+ "field_precision": 0,
+ "field_name": "Length",
+ "field_format": "####0;-####0"
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 5,
+ "field_precision": 0,
+ "field_name": "Precision",
+ "field_format": "####0;-####0"
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 2,
+ "field_precision": -1,
+ "field_name": "FormatMask",
+ "field_format": ""
+ },
+ {
+ "field_comment": "",
+ "field_length": -1,
+ "field_type": 2,
+ "field_precision": -1,
+ "field_name": "Origin",
+ "field_format": ""
+ }
+ ],
+ "folder_name": ""
+}
\ No newline at end of file
diff --git
a/integration-tests/transforms/metadata/unit-test/0080-test-duplicate-field-logic
UNIT.json
b/integration-tests/transforms/metadata/unit-test/0080-test-duplicate-field-logic
UNIT.json
new file mode 100644
index 0000000000..d4f234481a
--- /dev/null
+++
b/integration-tests/transforms/metadata/unit-test/0080-test-duplicate-field-logic
UNIT.json
@@ -0,0 +1,63 @@
+{
+ "database_replacements": [],
+ "autoOpening": true,
+ "description": "",
+ "persist_filename": "",
+ "test_type": "UNIT_TEST",
+ "variableValues": [],
+ "basePath": "",
+ "golden_data_sets": [
+ {
+ "field_mappings": [
+ {
+ "transform_field": "Position",
+ "data_set_field": "Position"
+ },
+ {
+ "transform_field": "Fieldname",
+ "data_set_field": "Fieldname"
+ },
+ {
+ "transform_field": "Comments",
+ "data_set_field": "Comments"
+ },
+ {
+ "transform_field": "Type",
+ "data_set_field": "Type"
+ },
+ {
+ "transform_field": "Length",
+ "data_set_field": "Length"
+ },
+ {
+ "transform_field": "Precision",
+ "data_set_field": "Precision"
+ },
+ {
+ "transform_field": "FormatMask",
+ "data_set_field": "FormatMask"
+ },
+ {
+ "transform_field": "Origin",
+ "data_set_field": "Origin"
+ }
+ ],
+ "field_order": [
+ "Position",
+ "Fieldname",
+ "Comments",
+ "Type",
+ "Length",
+ "Precision",
+ "FormatMask",
+ "Origin"
+ ],
+ "data_set_name": "golden-check-duplicate-field-logic",
+ "transform_name": "Dummy (do nothing)"
+ }
+ ],
+ "input_data_sets": [],
+ "name": "0080-test-duplicate-field-logic UNIT",
+ "trans_test_tweaks": [],
+ "pipeline_filename": "./0080-test-duplicate-field-logic.hpl"
+}
\ No newline at end of file
diff --git
a/integration-tests/transforms/metadata/unit-test/0080-test-duplicate-field-logic-database-join
UNIT.json
b/integration-tests/transforms/metadata/unit-test/0080-test-duplicate-field-logic-database-join
UNIT.json
new file mode 100644
index 0000000000..c3f420dbca
--- /dev/null
+++
b/integration-tests/transforms/metadata/unit-test/0080-test-duplicate-field-logic-database-join
UNIT.json
@@ -0,0 +1,63 @@
+{
+ "database_replacements": [],
+ "autoOpening": true,
+ "description": "",
+ "persist_filename": "",
+ "test_type": "UNIT_TEST",
+ "variableValues": [],
+ "basePath": "",
+ "golden_data_sets": [
+ {
+ "field_mappings": [
+ {
+ "transform_field": "Position",
+ "data_set_field": "Position"
+ },
+ {
+ "transform_field": "Fieldname",
+ "data_set_field": "Fieldname"
+ },
+ {
+ "transform_field": "Comments",
+ "data_set_field": "Comments"
+ },
+ {
+ "transform_field": "Type",
+ "data_set_field": "Type"
+ },
+ {
+ "transform_field": "Length",
+ "data_set_field": "Length"
+ },
+ {
+ "transform_field": "Precision",
+ "data_set_field": "Precision"
+ },
+ {
+ "transform_field": "FormatMask",
+ "data_set_field": "FormatMask"
+ },
+ {
+ "transform_field": "Origin",
+ "data_set_field": "Origin"
+ }
+ ],
+ "field_order": [
+ "Position",
+ "Fieldname",
+ "Comments",
+ "Type",
+ "Length",
+ "Precision",
+ "FormatMask",
+ "Origin"
+ ],
+ "data_set_name": "golden-check-duplicate-field-logic-database-join",
+ "transform_name": "Dummy (do nothing)"
+ }
+ ],
+ "input_data_sets": [],
+ "name": "0080-test-duplicate-field-logic-database-join UNIT",
+ "trans_test_tweaks": [],
+ "pipeline_filename": "./0080-test-duplicate-field-logic-database-join.hpl"
+}
\ No newline at end of file