summaryrefslogtreecommitdiffstats
path: root/catalog-be/src/test/resources/types/datatypes
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-be/src/test/resources/types/datatypes')
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeDeriveFromIntegerWithProperty.yml8
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeDerivedFromRootNoProperties.yml4
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeDuplicateProperty.yml11
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeForGroup.yml40
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeUpdatePropertyRemoved_part1.yml15
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeUpdatePropertyRemoved_part2.yml12
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentDerivedDataType_part1.yml19
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentDerivedDataType_part2.yml19
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentEntryType_part1.yml20
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentEntryType_part2.yml20
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentPropertyType_part1.yml22
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentPropertyType_part2.yml19
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithExistingPropertyNameInAncestor_part1.yml19
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithExistingPropertyNameInAncestor_part2.yml25
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypeWithPropertyTypeThisDataType.yml9
-rw-r--r--catalog-be/src/test/resources/types/datatypes/dataTypes.yml129
-rw-r--r--catalog-be/src/test/resources/types/datatypes/derived3levelDataType.yml37
-rw-r--r--catalog-be/src/test/resources/types/datatypes/derivedDataType.yml19
-rw-r--r--catalog-be/src/test/resources/types/datatypes/derivedDataTypeNoProperties.yml15
-rw-r--r--catalog-be/src/test/resources/types/datatypes/derivedInvalidDataType.yml15
-rw-r--r--catalog-be/src/test/resources/types/datatypes/emptyDataType.yml4
-rw-r--r--catalog-be/src/test/resources/types/datatypes/emptyDataTypeNoPropertiesTag.yml3
-rw-r--r--catalog-be/src/test/resources/types/datatypes/exitingPropertyAtAncestor.yml19
-rw-r--r--catalog-be/src/test/resources/types/datatypes/invalidDataType.yml1
-rw-r--r--catalog-be/src/test/resources/types/datatypes/oneDataType.yml9
25 files changed, 513 insertions, 0 deletions
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeDeriveFromIntegerWithProperty.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeDeriveFromIntegerWithProperty.yml
new file mode 100644
index 0000000000..7040f8717a
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeDeriveFromIntegerWithProperty.yml
@@ -0,0 +1,8 @@
+integer:
+
+mytypes.phonenumber:
+ derived_from: integer
+ description: my phone number datatype
+ properties:
+ countrycode:
+ type: integer
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeDerivedFromRootNoProperties.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeDerivedFromRootNoProperties.yml
new file mode 100644
index 0000000000..ce72cf52c4
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeDerivedFromRootNoProperties.yml
@@ -0,0 +1,4 @@
+# define a new datatype that derives from existing type and extends it
+mytypes.phonenumber.extended:
+ derived_from: tosca.datatypes.Root
+ description: custom phone number type that extends the basic phonenumber type
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeDuplicateProperty.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeDuplicateProperty.yml
new file mode 100644
index 0000000000..32ed904882
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeDuplicateProperty.yml
@@ -0,0 +1,11 @@
+mytypes.phonenumber:
+ description: my phone number datatype
+ properties:
+ countrycode:
+ type: integer
+ areacode1:
+ type: integer
+ number:
+ type: integer
+ areacode1:
+ type: integer
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeForGroup.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeForGroup.yml
new file mode 100644
index 0000000000..e811a1ff30
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeForGroup.yml
@@ -0,0 +1,40 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+integer:
+ derived_from: tosca.datatypes.Root
+
+string:
+ derived_from: tosca.datatypes.Root
+
+boolean:
+ derived_from: tosca.datatypes.Root
+
+float:
+ derived_from: tosca.datatypes.Root
+
+list:
+ derived_from: tosca.datatypes.Root
+
+map:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol:
+ type: string
+ required: false
+ token_type:
+ type: string
+ default: password
+ token:
+ type: string
+ keys:
+ type: map
+ required: false
+ entry_schema:
+ type: string
+ user:
+ type: string
+ required: false \ No newline at end of file
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeUpdatePropertyRemoved_part1.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdatePropertyRemoved_part1.yml
new file mode 100644
index 0000000000..b8cdc3bf62
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdatePropertyRemoved_part1.yml
@@ -0,0 +1,15 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+string:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol1:
+ type: string
+ required: false
+ protocol2:
+ type: string
+ required: false
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeUpdatePropertyRemoved_part2.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdatePropertyRemoved_part2.yml
new file mode 100644
index 0000000000..5a5be60ee3
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdatePropertyRemoved_part2.yml
@@ -0,0 +1,12 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+string:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol1:
+ type: string
+ required: false \ No newline at end of file
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentDerivedDataType_part1.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentDerivedDataType_part1.yml
new file mode 100644
index 0000000000..f7aaff2236
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentDerivedDataType_part1.yml
@@ -0,0 +1,19 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+string:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential2:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol2:
+ type: string
+ required: false
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol:
+ type: string
+ required: false
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentDerivedDataType_part2.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentDerivedDataType_part2.yml
new file mode 100644
index 0000000000..e1897d1f72
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentDerivedDataType_part2.yml
@@ -0,0 +1,19 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+string:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential2:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol2:
+ type: string
+ required: false
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Credential2
+ properties:
+ protocol:
+ type: string
+ required: false \ No newline at end of file
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentEntryType_part1.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentEntryType_part1.yml
new file mode 100644
index 0000000000..d5784d1e61
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentEntryType_part1.yml
@@ -0,0 +1,20 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+string:
+ derived_from: tosca.datatypes.Root
+
+integer:
+ derived_from: tosca.datatypes.Root
+
+map:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Root
+ properties:
+ keys:
+ type: map
+ required: false
+ entry_schema:
+ type: integer
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentEntryType_part2.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentEntryType_part2.yml
new file mode 100644
index 0000000000..4a5539dcaa
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentEntryType_part2.yml
@@ -0,0 +1,20 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+string:
+ derived_from: tosca.datatypes.Root
+
+integer:
+ derived_from: tosca.datatypes.Root
+
+map:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Root
+ properties:
+ keys:
+ type: map
+ required: false
+ entry_schema:
+ type: string
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentPropertyType_part1.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentPropertyType_part1.yml
new file mode 100644
index 0000000000..70e4976b2f
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentPropertyType_part1.yml
@@ -0,0 +1,22 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+string:
+ derived_from: tosca.datatypes.Root
+
+integer:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential2:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol2:
+ type: string
+ required: false
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol:
+ type: integer
+ required: false
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentPropertyType_part2.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentPropertyType_part2.yml
new file mode 100644
index 0000000000..71e26a7320
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithDifferentPropertyType_part2.yml
@@ -0,0 +1,19 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+string:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential2:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol2:
+ type: string
+ required: false
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol:
+ type: string
+ required: false \ No newline at end of file
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithExistingPropertyNameInAncestor_part1.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithExistingPropertyNameInAncestor_part1.yml
new file mode 100644
index 0000000000..71e26a7320
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithExistingPropertyNameInAncestor_part1.yml
@@ -0,0 +1,19 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+string:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential2:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol2:
+ type: string
+ required: false
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol:
+ type: string
+ required: false \ No newline at end of file
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithExistingPropertyNameInAncestor_part2.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithExistingPropertyNameInAncestor_part2.yml
new file mode 100644
index 0000000000..b4945fcd7f
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeUpdateWithExistingPropertyNameInAncestor_part2.yml
@@ -0,0 +1,25 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+string:
+ derived_from: tosca.datatypes.Root
+
+integer:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential2:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol2:
+ type: string
+ required: false
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Credential2
+ properties:
+ protocol:
+ type: integer
+ required: false
+ protocol2:
+ type: integer
+ required: false
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypeWithPropertyTypeThisDataType.yml b/catalog-be/src/test/resources/types/datatypes/dataTypeWithPropertyTypeThisDataType.yml
new file mode 100644
index 0000000000..c142b1d2c4
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypeWithPropertyTypeThisDataType.yml
@@ -0,0 +1,9 @@
+mytypes.phonenumber:
+ description: my phone number datatype
+ properties:
+ countrycode:
+ type: integer
+ areacode:
+ type: integer
+ number:
+ type: mytypes.phonenumber
diff --git a/catalog-be/src/test/resources/types/datatypes/dataTypes.yml b/catalog-be/src/test/resources/types/datatypes/dataTypes.yml
new file mode 100644
index 0000000000..188c85bef3
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/dataTypes.yml
@@ -0,0 +1,129 @@
+tosca.datatypes.Root:
+ description: The TOSCA root Data Type all other TOSCA base Data Types derive from
+
+integer:
+ derived_from: tosca.datatypes.Root
+
+string:
+ derived_from: tosca.datatypes.Root
+
+boolean:
+ derived_from: tosca.datatypes.Root
+
+float:
+ derived_from: tosca.datatypes.Root
+
+list:
+ derived_from: tosca.datatypes.Root
+
+map:
+ derived_from: tosca.datatypes.Root
+
+tosca.datatypes.Credential:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol:
+ type: string
+ required: false
+ token_type:
+ type: string
+ default: password
+ token:
+ type: string
+ keys:
+ type: map
+ required: false
+ entry_schema:
+ type: string
+ user:
+ type: string
+ required: false
+
+tosca.datatypes.TimeInterval:
+ derived_from: tosca.datatypes.Root
+ properties:
+ start_time:
+ type: timestamp
+ required: true
+ end_time:
+ type: timestamp
+ required: true
+
+tosca.datatypes.network.NetworkInfo:
+ derived_from: tosca.datatypes.Root
+ properties:
+ network_name:
+ type: string
+ network_id:
+ type: string
+ addresses:
+ type: list
+ entry_schema:
+ type: string
+
+tosca.datatypes.network.PortInfo:
+ derived_from: tosca.datatypes.Root
+ properties:
+ port_name:
+ type: string
+ port_id:
+ type: string
+ network_id:
+ type: string
+ mac_address:
+ type: string
+ addresses:
+ type: list
+ entry_schema:
+ type: string
+
+tosca.datatypes.network.PortDef:
+ derived_from: integer
+ constraints:
+ - in_range: [ 1, 65535 ]
+
+tosca.datatypes.network.PortSpec:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol:
+ type: string
+ required: true
+ default: tcp
+ constraints:
+ - valid_values: [ udp, tcp, igmp ]
+ target:
+ type: tosca.datatypes.network.PortDef
+ target_range:
+ type: range
+ constraints:
+ - in_range: [ 1, 65535 ]
+ source:
+ type: tosca.datatypes.network.PortDef
+ source_range:
+ type: range
+ constraints:
+ - in_range: [ 1, 65535 ]
+
+tosca.datatypes.complexEntryTypeMapList:
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol:
+ type: string
+ required: false
+ token_type:
+ type: string
+ default: password
+ token:
+ type: string
+ keys:
+ type: map
+ required: false
+ entry_schema:
+ type: tosca.datatypes.Credential
+ addresses:
+ type: list
+ entry_schema:
+ type: tosca.datatypes.Credential
+ user:
+ type: string
+ required: false
diff --git a/catalog-be/src/test/resources/types/datatypes/derived3levelDataType.yml b/catalog-be/src/test/resources/types/datatypes/derived3levelDataType.yml
new file mode 100644
index 0000000000..f185167b80
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/derived3levelDataType.yml
@@ -0,0 +1,37 @@
+mytypes.phonenumber:
+ description: my phone number datatype
+ properties:
+ countrycode:
+ type: integer
+ areacode:
+ type: integer
+ number:
+ type: integer
+
+# define a new datatype that derives from existing type and extends it
+mytypes.phonenumber.extended:
+ derived_from: mytypes.phonenumber
+ description: custom phone number type that extends the basic phonenumber type
+ properties:
+ phone_description:
+ type: string
+ constraints:
+ - max_length: 128
+
+
+
+
+mytypes.phonenumber.extended.extended:
+ derived_from: mytypes.phonenumber.extended
+ description: custom phone number type that extends the basic phonenumber type
+ properties:
+ email:
+ type: string
+ constraints:
+ - max_length: 128
+ complex1:
+ type: mytypes.phonenumber.extended
+ constraints:
+ - max_length: 128
+
+ \ No newline at end of file
diff --git a/catalog-be/src/test/resources/types/datatypes/derivedDataType.yml b/catalog-be/src/test/resources/types/datatypes/derivedDataType.yml
new file mode 100644
index 0000000000..1c4ca88ff9
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/derivedDataType.yml
@@ -0,0 +1,19 @@
+mytypes.phonenumber:
+ description: my phone number datatype
+ properties:
+ countrycode:
+ type: integer
+ areacode:
+ type: integer
+ number:
+ type: integer
+
+# define a new datatype that derives from existing type and extends it
+mytypes.phonenumber.extended:
+ derived_from: mytypes.phonenumber
+ description: custom phone number type that extends the basic phonenumber type
+ properties:
+ phone_description:
+ type: string
+ constraints:
+ - max_length: 128
diff --git a/catalog-be/src/test/resources/types/datatypes/derivedDataTypeNoProperties.yml b/catalog-be/src/test/resources/types/datatypes/derivedDataTypeNoProperties.yml
new file mode 100644
index 0000000000..2e6b35978e
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/derivedDataTypeNoProperties.yml
@@ -0,0 +1,15 @@
+mytypes.phonenumber:
+ description: my phone number datatype
+ properties:
+ countrycode:
+ type: integer
+ areacode:
+ type: integer
+ number:
+ type: integer
+
+# define a new datatype that derives from existing type and extends it
+mytypes.phonenumber.extended:
+ derived_from: mytypes.phonenumber
+ description: custom phone number type that extends the basic phonenumber type
+
diff --git a/catalog-be/src/test/resources/types/datatypes/derivedInvalidDataType.yml b/catalog-be/src/test/resources/types/datatypes/derivedInvalidDataType.yml
new file mode 100644
index 0000000000..d76cc5f219
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/derivedInvalidDataType.yml
@@ -0,0 +1,15 @@
+mytypes.phonenumber2:
+ description: my phone number datatype
+ properties:
+ countrycode:
+ type: integer
+ areacode:
+ type: integer
+ number:
+ type: integer
+
+# define a new datatype that derives from existing type and extends it
+mytypes.phonenumber.extended:
+ derived_from: mytypes.phonenumber3
+ description: custom phone number type that extends the basic phonenumber type
+
diff --git a/catalog-be/src/test/resources/types/datatypes/emptyDataType.yml b/catalog-be/src/test/resources/types/datatypes/emptyDataType.yml
new file mode 100644
index 0000000000..6a0318eca4
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/emptyDataType.yml
@@ -0,0 +1,4 @@
+mytypes.phonenumber.empty:
+ description: my phone number datatype
+ properties:
+
diff --git a/catalog-be/src/test/resources/types/datatypes/emptyDataTypeNoPropertiesTag.yml b/catalog-be/src/test/resources/types/datatypes/emptyDataTypeNoPropertiesTag.yml
new file mode 100644
index 0000000000..933c14f778
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/emptyDataTypeNoPropertiesTag.yml
@@ -0,0 +1,3 @@
+mytypes.phonenumber.empty:
+ description: my phone number datatype
+
diff --git a/catalog-be/src/test/resources/types/datatypes/exitingPropertyAtAncestor.yml b/catalog-be/src/test/resources/types/datatypes/exitingPropertyAtAncestor.yml
new file mode 100644
index 0000000000..0e46cc2a98
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/exitingPropertyAtAncestor.yml
@@ -0,0 +1,19 @@
+mytypes.phonenumber:
+ description: my phone number datatype
+ properties:
+ countrycode:
+ type: integer
+ areacode:
+ type: integer
+ number:
+ type: integer
+
+# define a new datatype that derives from existing type and extends it
+mytypes.phonenumber.extended:
+ derived_from: mytypes.phonenumber
+ description: custom phone number type that extends the basic phonenumber type
+ properties:
+ areacode:
+ type: integer
+
+
diff --git a/catalog-be/src/test/resources/types/datatypes/invalidDataType.yml b/catalog-be/src/test/resources/types/datatypes/invalidDataType.yml
new file mode 100644
index 0000000000..d5ad5a93ba
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/invalidDataType.yml
@@ -0,0 +1 @@
+mytypes.phonenumber.empty
diff --git a/catalog-be/src/test/resources/types/datatypes/oneDataType.yml b/catalog-be/src/test/resources/types/datatypes/oneDataType.yml
new file mode 100644
index 0000000000..114236fb3e
--- /dev/null
+++ b/catalog-be/src/test/resources/types/datatypes/oneDataType.yml
@@ -0,0 +1,9 @@
+mytypes.phonenumber:
+ description: my phone number datatype
+ properties:
+ countrycode:
+ type: integer
+ areacode:
+ type: integer
+ number:
+ type: integer