Adds augments to Makefile and tests for descriptors validation

Change-Id: I418df68b5c8773cdf8dd639d8241f7dcfed0ccde
Signed-off-by: garciaale <agarcia@whitestack.com>
diff --git a/tests/examples/alternative_image_im.yaml b/tests/examples/alternative_image_im.yaml
new file mode 100644
index 0000000..db06e75
--- /dev/null
+++ b/tests/examples/alternative_image_im.yaml
@@ -0,0 +1,46 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+vnfd:vnfd-catalog:
+  vnfd:
+    - id: hackfest_basic-vnf
+      name: hackfest_basic-vnf
+      short-name: hackfest_basic-vnf
+      version: "1.0"
+      description: A basic VNF descriptor w/ one VDU
+      logo: osm.png
+      connection-point:
+        - name: vnf-cp0
+
+      vdu:
+        - id: hackfest_basic-VM
+          name: hackfest_basic-VM
+          image: ubuntu1604
+          alternative-images:
+            - vim-type: aws
+              image: ubuntu/images/hvm-ssd/ubuntu-artful-17.10-amd64-server-20180509
+          count: "1"
+          vm-flavor:
+            vcpu-count: "1"
+            memory-mb: "1024"
+            storage-gb: "10"
+          interface:
+            - name: vdu-eth0
+              type: EXTERNAL
+              virtual-interface:
+                type: PARAVIRT
+              external-connection-point-ref: vnf-cp0
+      mgmt-interface:
+        cp: vnf-cp0
diff --git a/tests/examples/alternative_image_sol006.yaml b/tests/examples/alternative_image_sol006.yaml
new file mode 100644
index 0000000..ac7650c
--- /dev/null
+++ b/tests/examples/alternative_image_sol006.yaml
@@ -0,0 +1,76 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+vnfd:
+  id: hackfest_basic-vnf
+  product-name: hackfest_basic-vnf
+  description: A basic VNF descriptor w/ one VDU
+  version: "1.0"
+  mgmt-cp: vnf-cp0
+
+  virtual-compute-desc:
+    - id: cirros-compute
+      virtual-cpu:
+        num-virtual-cpu: 1
+      virtual-memory:
+        size: 1 # Memory size in GB
+
+  virtual-storage-desc:
+    - id: cirros-storage
+      size-of-storage: 10
+
+  sw-image-desc:
+    - id: ubuntu1604
+      name: ubuntu1604
+      checksum:
+        hash: # Mandatory?
+    - id: ubuntu1604-aws
+      name: ubuntu1604-aws
+      image: ubuntu/images/hvm-ssd/ubuntu-artful-17.10-amd64-server-20180509
+      vim-type: aws
+      checksum:
+        hash: # Mandatory?
+
+  vdu:
+    - id: hackfest_basic-VM
+      name: hackfest_basic-VM
+      virtual-compute-desc: cirros-compute
+      virtual-storage-desc: cirros-storage
+      sw-image-desc: ubuntu1604
+      alternative-sw-image-desc:
+        - ubuntu1604-aws
+      int-cpd:
+        - id: eth0-int
+          virtual-network-interface-requirement:
+            - name: vdu-eth0
+              virtual-interface:
+                type: PARAVIRT
+
+  df:
+    - id: cirros_default
+      vdu-profile:
+        - id: hackfest_basic-VM
+          min-number-of-instances: 1
+      instantiation-level:
+        - id: default
+          vdu-level:
+            - vdu-id: hackfest_basic-VM
+              number-of-instances: 1
+
+  ext-cpd:
+    - id: vnf-cp0
+      int-cpd: # Connection to int-cpd
+        vdu-id: hackfest_basic-VM
+        cpd: eth0-int
diff --git a/tests/examples/cirros_nsd_im.yaml b/tests/examples/cirros_nsd_im.yaml
new file mode 100644
index 0000000..dcc832b
--- /dev/null
+++ b/tests/examples/cirros_nsd_im.yaml
@@ -0,0 +1,59 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+nsd:nsd-catalog:
+  nsd:
+    - id: cirros_2vnf_nsd
+      name: cirros_2vnf_ns
+      short-name: cirros_2vnf_ns
+      description: Generated by OSM pacakage generator
+      vendor: OSM
+      version: "1.0"
+
+      # Place the logo as png in icons directory and provide the name here
+      logo: osm_2x.png
+
+      # Specify the VNFDs that are part of this NSD
+      constituent-vnfd:
+        # The member-vnf-index needs to be unique, starting from 1
+        # vnfd-id-ref is the id of the VNFD
+        # Multiple constituent VNFDs can be specified
+        - member-vnf-index: 1
+          vnfd-id-ref: cirros_vnfd
+        - member-vnf-index: 2
+          vnfd-id-ref: cirros_vnfd
+
+      vld:
+        # Networks for the VNFs
+        - id: cirros_2vnf_nsd_vld1
+          name: cirros_2vnf_nsd_vld1
+          short-name: cirros_2vnf_nsd_vld1
+          type: ELAN
+          mgmt-network: "true"
+          # vim-network-name: <update>
+          # provider-network:
+          #     overlay-type: VLAN
+          #     segmentation_id: <update>
+          vnfd-connection-point-ref:
+            # Specify the constituent VNFs
+            # member-vnf-index-ref - entry from constituent vnf
+            # vnfd-id-ref - VNFD id
+            # vnfd-connection-point-ref - connection point name in the VNFD
+            - member-vnf-index-ref: 1
+              vnfd-id-ref: cirros_vnfd
+              vnfd-connection-point-ref: eth0
+            - member-vnf-index-ref: 2
+              vnfd-id-ref: cirros_vnfd
+              vnfd-connection-point-ref: eth0
diff --git a/tests/examples/cirros_nsd_sol006.yaml b/tests/examples/cirros_nsd_sol006.yaml
new file mode 100644
index 0000000..a5575ef
--- /dev/null
+++ b/tests/examples/cirros_nsd_sol006.yaml
@@ -0,0 +1,43 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+nsd:
+  nsd:
+    - id: cirros_2vnf_nsd
+      name: cirros_2vnf_nsd
+      description: Generated by OSM package generator
+      designer: OSM
+      version: "1.0"
+      vnfd-id:
+        - cirros_vnfd
+
+      virtual-link-desc:
+        - id: cirros_2vnf_nsd_vld1
+          mgmt-network: "true"
+
+      df:
+        - id: cirros_DF
+          vnf-profile:
+            - id: cirros_vnf1 # member-vnf-index-ref: 1
+              vnfd-id: cirros_vnfd
+              virtual-link-connectivity:
+                - virtual-link-profile-id: cirros_2vnf_nsd_vld1
+                  constituent-cpd-id:
+                    - constituent-base-element-id: cirros_vnf1
+                      constituent-cpd-id: eth0-ext
+                    - constituent-base-element-id: cirros_vnf2
+                      constituent-cpd-id: eth0-ext
+            - id: cirros_vnf2 # member-vnf-index-ref: 2
+              vnfd-id: cirros_vnfd
diff --git a/tests/examples/cirros_vnfd_im.yaml b/tests/examples/cirros_vnfd_im.yaml
new file mode 100644
index 0000000..fbfd5ee
--- /dev/null
+++ b/tests/examples/cirros_vnfd_im.yaml
@@ -0,0 +1,63 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+vnfd:vnfd-catalog:
+  vnfd:
+    - id: cirros_vnfd
+      name: cirros_vnf
+      short-name: cirros_vnf
+      description: Simple VNF example with a cirros
+      vendor: OSM
+      version: "1.0"
+
+      # Place the logo as png in icons directory and provide the name here
+      logo: cirros-64.png
+
+      # Management interface
+      mgmt-interface:
+        cp: eth0
+
+      # Atleast one VDU need to be specified
+      vdu:
+        - id: cirros_vnfd-VM
+          name: cirros_vnfd-VM
+          description: cirros_vnfd-VM
+          count: 1
+
+          # Flavour of the VM to be instantiated for the VDU
+          # flavor below can fit into m1.micro
+          vm-flavor:
+            vcpu-count: 1
+            memory-mb: 256
+            storage-gb: 2
+
+          # Image/checksum or image including the full path
+          image: cirros034
+          #checksum:
+
+          interface:
+            # Specify the external interfaces
+            # There can be multiple interfaces defined
+            - name: eth0
+              type: EXTERNAL
+              virtual-interface:
+                type: VIRTIO
+                bandwidth: "0"
+                vpci: 0000:00:0a.0
+              external-connection-point-ref: eth0
+
+      connection-point:
+        - name: eth0
+          type: VPORT
diff --git a/tests/examples/cirros_vnfd_sol006.yaml b/tests/examples/cirros_vnfd_sol006.yaml
new file mode 100644
index 0000000..e20faef
--- /dev/null
+++ b/tests/examples/cirros_vnfd_sol006.yaml
@@ -0,0 +1,70 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+vnfd:
+  id: cirros_vnfd
+  product-name: cirros_vnf
+  description: Simple VNF example with a cirros
+  provider: OSM
+  version: "1.0"
+  mgmt-cp: eth0-int
+
+  virtual-compute-desc:
+    - id: cirros-compute
+      virtual-cpu:
+        num-virtual-cpu: 1
+      virtual-memory:
+        size: 0.256 # Memory size in GB
+
+  virtual-storage-desc:
+    - id: cirros-storage
+      size-of-storage: 2
+
+  sw-image-desc:
+    - id: cirros034
+      name: cirros034
+
+  vdu:
+    - id: cirros_vnfd-VM
+      name: cirros_vnfd-VM
+      description: cirros_vnfd-VM
+      virtual-compute-desc: cirros-compute
+      virtual-storage-desc: cirros-storage
+      sw-image-desc: cirros034
+      int-cpd:
+        - id: eth0-int
+          virtual-network-interface-requirement:
+            - name: eth0
+              virtual-interface:
+                type: VIRTIO
+                bandwidth: "0"
+                vpci: 0000:00:0a.0
+
+  df:
+    - id: cirros_default
+      vdu-profile:
+        - id: cirros_vnfd-VM
+          min-number-of-instances: 1
+      instantiation-level:
+        - id: default
+          vdu-level:
+            - vdu-id: cirros_vnfd-VM
+              number-of-instances: 1
+
+  ext-cpd:
+    - id: eth0-ext
+      int-cpd: # Connection to int-cpd
+        vdu-id: cirros_vnfd-VM
+        cpd: eth0-int
diff --git a/tests/examples/epa_advanced_im.yaml b/tests/examples/epa_advanced_im.yaml
new file mode 100644
index 0000000..f13d08b
--- /dev/null
+++ b/tests/examples/epa_advanced_im.yaml
@@ -0,0 +1,154 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+vnfd-catalog:
+  vnfd:
+    - connection-point:
+        - name: eth0
+          type: VPORT
+        - name: xe0
+          type: VPORT
+        - name: xe1
+          type: VPORT
+        - name: xe2
+          type: VPORT
+        - name: xe3
+          type: VPORT
+        - name: xe4
+          type: VPORT
+        - name: xe5
+          type: VPORT
+        - name: xe6
+          type: VPORT
+        - name: xe7
+          type: VPORT
+      description: vBNG VNF for performance tests, with 34 HTs
+      id: vbng34
+      logo: intel.png
+      mgmt-interface:
+        cp: eth0
+      name: vbng34
+      service-function-chain: UNAWARE
+      short-name: vbng34
+      vdu:
+        - count: "1"
+          description: vbng34-VM
+          guest-epa:
+            cpu-pinning-policy: DEDICATED
+            cpu-thread-pinning-policy: PREFER
+            mempage-size: LARGE
+            numa-node-policy:
+              mem-policy: STRICT
+              node:
+                - id: "0"
+                  paired-threads:
+                    num-paired-threads: "17"
+              node-cnt: "1"
+          host-epa:
+            om-cpu-feature:
+              - feature: 64b
+              - feature: iommu
+              - feature: lps
+              - feature: tlbps
+              - feature: hwsv
+              - feature: dioc
+              - feature: ht
+            om-cpu-model-string: Intel(R) Xeon(R) CPU E5-4620 0 @ 2.20GHz
+          hypervisor-epa:
+            type: REQUIRE_KVM
+            version: 10002|12001|2.6.32-358.el6.x86_64
+          id: vbng34-VM
+          image: intel_vbng34
+          interface:
+            - external-connection-point-ref: eth0
+              name: eth0
+              position: "1"
+              type: EXTERNAL
+              virtual-interface:
+                bandwidth: "1000000"
+                type: PARAVIRT
+                vpci: 0000:00:0a.0
+            - external-connection-point-ref: xe0
+              name: xe0
+              position: "2"
+              type: EXTERNAL
+              virtual-interface:
+                bandwidth: "10000000000"
+                type: PCI-PASSTHROUGH
+                vpci: "0000:00:10.0"
+            - external-connection-point-ref: xe1
+              name: xe1
+              position: "3"
+              type: EXTERNAL
+              virtual-interface:
+                bandwidth: "10000000000"
+                type: PCI-PASSTHROUGH
+                vpci: "0000:00:11.0"
+            - external-connection-point-ref: xe2
+              name: xe2
+              position: "4"
+              type: EXTERNAL
+              virtual-interface:
+                bandwidth: "10000000000"
+                type: PCI-PASSTHROUGH
+                vpci: "0000:00:12.0"
+            - external-connection-point-ref: xe3
+              name: xe3
+              position: "5"
+              type: EXTERNAL
+              virtual-interface:
+                bandwidth: "10000000000"
+                type: PCI-PASSTHROUGH
+                vpci: "0000:00:13.0"
+            - external-connection-point-ref: xe4
+              name: xe4
+              position: "6"
+              type: EXTERNAL
+              virtual-interface:
+                bandwidth: "10000000000"
+                type: PCI-PASSTHROUGH
+                vpci: "0000:00:14.0"
+            - external-connection-point-ref: xe5
+              name: xe5
+              position: "7"
+              type: EXTERNAL
+              virtual-interface:
+                bandwidth: "10000000000"
+                type: PCI-PASSTHROUGH
+                vpci: "0000:00:15.0"
+            - external-connection-point-ref: xe6
+              name: xe6
+              position: "8"
+              type: EXTERNAL
+              virtual-interface:
+                bandwidth: "10000000000"
+                type: PCI-PASSTHROUGH
+                vpci: "0000:00:16.0"
+            - external-connection-point-ref: xe7
+              name: xe7
+              position: "9"
+              type: EXTERNAL
+              virtual-interface:
+                bandwidth: "10000000000"
+                type: PCI-PASSTHROUGH
+                vpci: "0000:00:17.0"
+          name: vbng34-VM
+          supplemental-boot-data:
+            boot-data-drive: "false"
+          vm-flavor:
+            memory-mb: "32768"
+            storage-gb: "15"
+      vendor: Intel
+      version: "1.0"
diff --git a/tests/examples/epa_im.yaml b/tests/examples/epa_im.yaml
new file mode 100644
index 0000000..12b0b4d
--- /dev/null
+++ b/tests/examples/epa_im.yaml
@@ -0,0 +1,36 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+vnfd:vnfd-catalog:
+  vnfd:
+    - id: 
+      ...
+      
+      vdu:
+        - id: dataVM
+          name: dataVM
+          count: "1"
+          description: ""
+          guest-epa:
+            cpu-pinning-policy: DEDICATED
+            cpu-thread-pinning-policy: PREFER
+            mempage-size: LARGE
+            numa-node-policy:
+              mem-policy: STRICT
+              node:
+                - id: "1"
+              node-cnt: "1"
+      ...
+          
diff --git a/tests/examples/etsi_complex_vnfd_sol006.yaml b/tests/examples/etsi_complex_vnfd_sol006.yaml
new file mode 100644
index 0000000..962f58b
--- /dev/null
+++ b/tests/examples/etsi_complex_vnfd_sol006.yaml
@@ -0,0 +1,215 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+# Example adapted from official ETSI repo:
+#  https://forge.etsi.org/rep/nfv/SOL006/blob/master/example-data/complex-vnfd.xml
+
+vnfd:
+  provider: My Company
+  product-name: complex-vnf
+  software-version: '1.0'
+  version: '1.0'
+  vnfm-info: netconf
+  id: complex-vnf
+  vdu:
+    - id: control-plane-active
+      name: control-plane-active
+      int-cpd:
+        - id: internal
+          int-virtual-link-desc: internal-vl
+          layer-protocol: ipv4
+        - id: mgmt
+          int-virtual-link-desc: mgmt
+          layer-protocol: ipv4
+      virtual-compute-desc: CP
+      virtual-storage-desc: root
+      sw-image-desc: CP
+    - id: control-plane-standby
+      name: control-plane-standby
+      int-cpd:
+        - id: internal
+          int-virtual-link-desc: internal-vl
+          layer-protocol: ipv4
+        - id: mgmt
+          int-virtual-link-desc: mgmt
+          layer-protocol: ipv4
+      virtual-compute-desc: CP
+      virtual-storage-desc: root
+      sw-image-desc: CP
+    - id: data-plane
+      name: data-plane
+      int-cpd:
+        - id: in
+          layer-protocol: ipv4
+        - id: internal
+          int-virtual-link-desc: internal-vl
+          layer-protocol: ipv4
+        - id: out
+          layer-protocol: ipv4
+      virtual-compute-desc: DP
+      virtual-storage-desc: root
+      sw-image-desc: DP
+  virtual-compute-desc:
+    - id: CP
+      virtual-memory:
+        size: '16.0'
+      virtual-cpu:
+        num-virtual-cpu: '8'
+    - id: DP
+      virtual-memory:
+        size: '32.0'
+      virtual-cpu:
+        num-virtual-cpu: '16'
+  virtual-storage-desc:
+    - id: root
+      type-of-storage: ephemeral-storage
+      size-of-storage: '10'
+      rdma-enabled: 'true'
+      sw-image-desc: CP
+  sw-image-desc:
+    - id: CP
+      name: CP
+      version: '1.1'
+      checksum:
+        algorithm: sha-224
+        hash: deadbeef
+      container-format: bare
+      disk-format: qcow2
+      min-disk: '1'
+      min-ram: '2.0'
+      size: '1'
+      image: 'http://mycompany.images.com/control-plane.qcow2'
+    - id: DP
+      name: DP
+      version: '1.1'
+      checksum:
+        algorithm: sha-224
+        hash: deadbeef
+      container-format: bare
+      disk-format: qcow2
+      min-disk: '1'
+      min-ram: '2.0'
+      size: '1'
+      image: 'http://mycompany.images.com/data-plane.qcow2'
+  int-virtual-link-desc:
+    - id: internal-vl
+      connectivity-type:
+        layer-protocol: ipv4
+    - id: mgmt
+      connectivity-type:
+        layer-protocol: ipv4
+  ext-cpd:
+    - id: in
+      int-cpd:
+        vdu-id: data-plane
+        cpd: in
+      layer-protocol: ipv4
+    - id: mgmt
+      int-virtual-link-desc: mgmt
+      layer-protocol: ipv4
+    - id: out
+      int-cpd:
+        vdu-id: data-plane
+        cpd: out
+      layer-protocol: ipv4
+  df:
+    - id: gold
+      vdu-profile:
+        - id: control-plane-active
+          min-number-of-instances: '1'
+          max-number-of-instances: '1'
+          affinity-or-anti-affinity-group:
+            - id: control-plane
+        - id: control-plane-standby
+          min-number-of-instances: '1'
+          max-number-of-instances: '1'
+          affinity-or-anti-affinity-group:
+            - id: control-plane
+        - id: data-plane
+          min-number-of-instances: '2'
+          max-number-of-instances: '8'
+      instantiation-level:
+        - id: il-1
+          vdu-level:
+            - vdu-id: control-plane-active
+              number-of-instances: '1'
+            - vdu-id: control-plane-standby
+              number-of-instances: '1'
+            - vdu-id: data-plane
+              number-of-instances: '2'
+        - id: il-2
+          vdu-level:
+            - vdu-id: control-plane-active
+              number-of-instances: '1'
+            - vdu-id: control-plane-standby
+              number-of-instances: '1'
+            - vdu-id: data-plane
+              number-of-instances: '4'
+      default-instantiation-level: il-1
+      lcm-operations-configuration:
+        scale-vnf-to-level-op-config:
+          arbitrary-target-levels-supported: 'true'
+        terminate-vnf-op-config:
+          min-graceful-termination: '1'
+        operate-vnf-op-config:
+          min-graceful-stop-timeout: '1'
+      affinity-or-anti-affinity-group:
+        - id: control-plane
+          type: anti-affinity
+          scope: nfvi-node
+    - id: silver
+      vdu-profile:
+        - id: control-plane-active
+          min-number-of-instances: '1'
+          max-number-of-instances: '1'
+          affinity-or-anti-affinity-group:
+            - id: control-plane
+        - id: control-plane-standby
+          min-number-of-instances: '1'
+          max-number-of-instances: '1'
+          affinity-or-anti-affinity-group:
+            - id: control-plane
+        - id: data-plane
+          min-number-of-instances: '1'
+          max-number-of-instances: '4'
+      instantiation-level:
+        - id: il-1
+          vdu-level:
+            - vdu-id: control-plane-active
+              number-of-instances: '1'
+            - vdu-id: control-plane-standby
+              number-of-instances: '1'
+            - vdu-id: data-plane
+              number-of-instances: '1'
+        - id: il-2
+          vdu-level:
+            - vdu-id: control-plane-active
+              number-of-instances: '1'
+            - vdu-id: control-plane-standby
+              number-of-instances: '1'
+            - vdu-id: data-plane
+              number-of-instances: '2'
+      default-instantiation-level: il-1
+      lcm-operations-configuration:
+        scale-vnf-to-level-op-config:
+          arbitrary-target-levels-supported: 'true'
+        terminate-vnf-op-config:
+          min-graceful-termination: '1'
+        operate-vnf-op-config:
+          min-graceful-stop-timeout: '1'
+      affinity-or-anti-affinity-group:
+        - id: control-plane
+          type: anti-affinity
+          scope: nfvi-node
\ No newline at end of file
diff --git a/tests/examples/etsi_nsd_sol006.yaml b/tests/examples/etsi_nsd_sol006.yaml
new file mode 100644
index 0000000..f5d33fa
--- /dev/null
+++ b/tests/examples/etsi_nsd_sol006.yaml
@@ -0,0 +1,40 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+# Example adapted from official ETSI repo:
+#  https://forge.etsi.org/rep/nfv/SOL006/blob/master/example-data/nfv-nsd.xml
+
+nsd:
+  nsd:
+    - id: firewall-nsd
+      vnfd-id: ASA
+      sapd:
+        - id: inside
+        - id: management
+        - id: outside
+      df:
+        - id: firewall
+          vnf-profile:
+            - id: firewall
+              vnfd-id: ASA
+              flavour-id: normal
+              instantiation-level: single
+              min-number-of-instances: '1'
+              max-number-of-instances: '1'
+          ns-instantiation-level:
+            - id: single
+              vnf-to-level-mapping:
+                - vnf-profile-id: firewall
+                  number-of-instances: '1'
diff --git a/tests/examples/magma_knf_im.yaml b/tests/examples/magma_knf_im.yaml
new file mode 100644
index 0000000..feefeba
--- /dev/null
+++ b/tests/examples/magma_knf_im.yaml
@@ -0,0 +1,35 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+vnfd-catalog:
+  schema-version: "3.0"
+  vnfd:
+    - id: fb_magma_knf
+      name: fb_magma_knf
+      short-name: fb_magma_knf
+      description: KNF with KDU using a helm-chart for Facebook magma orc8r
+      vendor: ATOS
+      version: "1.0"
+      mgmt-interface:
+        cp: mgmt
+      connection-point:
+        - name: mgmt
+      k8s-cluster:
+        nets:
+          - id: mgmtnet
+            external-connection-point-ref: mgmt
+      kdu:
+        - name: orc8r
+          helm-chart: magma/orc8r
diff --git a/tests/examples/magma_knf_sol006.yaml b/tests/examples/magma_knf_sol006.yaml
new file mode 100644
index 0000000..925f350
--- /dev/null
+++ b/tests/examples/magma_knf_sol006.yaml
@@ -0,0 +1,44 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+vnfd:
+  id: fb_magma_knf
+  product-name: fb_magma_knf
+  description: KNF with KDU using a helm-chart for Facebook magma orc8r
+  provider: ATOS
+  version: "1.0"
+  mgmt-cp: mgmt
+
+  ext-cpd:
+    - id: mgmt-ext
+      k8s-cluster-net: mgmtnet
+
+  k8s-cluster:
+    nets:
+      - id: mgmtnet
+
+  kdu:
+    - name: orc8r
+
+  kdu-model:
+    - id: orc8r-model
+      kdu-model-type: helm-chart
+      kdu-model-locator: magma/orc8r
+
+  df:
+    - id: kdu-df
+      kdu-profile:
+        - name: orc8r
+          kdu-model-id: orc8r-model
\ No newline at end of file
diff --git a/tests/examples/vepc_im.yaml b/tests/examples/vepc_im.yaml
new file mode 100644
index 0000000..d816967
--- /dev/null
+++ b/tests/examples/vepc_im.yaml
@@ -0,0 +1,182 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+vnfd:vnfd-catalog:
+  vnfd:
+    - id: vEPC_vnfd
+      name: vEPC_vnfd # To product-name
+      short-name: vEPC_vnfd # Deprecated
+      description: Generated by OSM package generator
+      vendor: OSM_VNFONB_TF # To do provider
+      version: "1.0"
+      mgmt-interface: # To mgmt-cp
+        cp: spgwmme-mgmt
+      ip-profiles: # To deployment flavour (DF)
+        - name: s6a
+          description: s6a network
+          ip-profile-params:
+            ip-version: ipv4
+            subnet-address: 10.0.6.0/24
+            dhcp-params:
+              enabled: true
+      vdu:
+        - id: spgwmme
+          name: spgwmme
+          description: spgwmme
+          count: 1 # To DF vdu-profile or instantiation-level
+          vm-flavor:
+            vcpu-count: 2
+            memory-mb: 4096
+            storage-gb: 10
+          image: "nextepc-spgwmme-base"
+          cloud-init-file: spgwmme-init
+          interface:
+            - name: eth0
+              type: EXTERNAL
+              virtual-interface:
+                type: PARAVIRT
+              external-connection-point-ref: spgwmme-mgmt
+            - name: eth1
+              type: EXTERNAL
+              virtual-interface:
+                type: PARAVIRT
+              external-connection-point-ref: spgwmme-s1
+            - name: eth2
+              type: EXTERNAL
+              virtual-interface:
+                type: PARAVIRT
+              external-connection-point-ref: spgwmme-sgi
+            - name: eth3
+              type: INTERNAL
+              virtual-interface:
+                type: PARAVIRT
+              internal-connection-point-ref: spgwmme-s6a
+          internal-connection-point:
+            - id: spgwmme-s6a
+              name: spgwmme-s6a
+              type: VPORT
+          monitoring-param: # To be removed (feature 8157)
+            - id: "spgw_cpu_util"
+              nfvi-metric: "cpu_utilization"
+            - id: "spgw_memory_util"
+              nfvi-metric: "average_memory_utilization"
+        - id: hss
+          name: hss
+          description: hss
+          count: 1
+          vm-flavor:
+            vcpu-count: 1
+            memory-mb: 2048
+            storage-gb: 10
+          image: "nextepc-hss-base"
+          cloud-init-file: hss-init
+          interface:
+            - name: eth0
+              type: EXTERNAL
+              virtual-interface:
+                type: PARAVIRT
+              mgmt-interface: true
+              external-connection-point-ref: hss-mgmt
+            - name: eth1
+              type: INTERNAL
+              virtual-interface:
+                type: PARAVIRT
+              internal-connection-point-ref: hss-s6a
+          internal-connection-point:
+            - id: hss-s6a
+              name: hss-s6a
+              type: VPORT
+          vdu-configuration:
+            initial-config-primitive:
+              - seq: "1"
+                name: config
+                parameter:
+                  - name: ssh-hostname
+                    value: <rw_mgmt_ip>
+                  - name: ssh-username
+                    value: ubuntu
+                  - name: ssh-password
+                    value: <password>
+              - seq: "2"
+                name: configure-hss
+                parameter:
+                  - name: spgw-ip
+                    data-type: STRING
+                    value: <spgw_ip>
+                  - name: hss-ip
+                    data-type: STRING
+                    value: <hss_ip>
+              - seq: "3"
+                name: restart-hss
+            juju:
+              charm: hsscharm
+      internal-vld:
+        - id: s6a
+          ip-profile-ref: s6a
+          internal-connection-point:
+            - id-ref: spgwmme-s6a
+            - id-ref: hss-s6a
+          name: s6a
+      connection-point:
+        - name: spgwmme-mgmt
+        - name: spgwmme-s1
+        - name: spgwmme-sgi
+        - name: hss-mgmt
+      vnf-configuration:
+        initial-config-primitive:
+          - seq: "1"
+            name: config
+            parameter:
+              - name: ssh-hostname
+                value: <rw_mgmt_ip>
+              - name: ssh-username
+                value: ubuntu
+              - name: ssh-password
+                value: <password>
+          - seq: "2"
+            name: configure-spgw
+            parameter:
+              - name: spgw-ip
+                data-type: STRING
+                value: <spgw_ip>
+              - name: hss-ip
+                data-type: STRING
+                value: <hss_ip>
+          - seq: "3"
+            name: restart-spgw
+        config-primitive:
+          - name: add-route
+            parameter:
+              - name: external-prefix
+                data-type: STRING
+                default-value: "8.8.8.8/32"
+              - name: next-hop
+                data-type: STRING
+                default-value: "192.168.2.1"
+        juju:
+          charm: spgwcharm
+      monitoring-param:
+        - id: "spgw_cpu_util"
+          name: "spgw_cpu_util"
+          aggregation-type: AVERAGE
+          vdu-monitoring-param:
+            vdu-ref: "spgwmme"
+            vdu-monitoring-param-ref: "spgw_cpu_util"
+        - id: "spgw_memory_util"
+          name: "spgw_memory_util"
+          aggregation-type: AVERAGE
+          vdu-monitoring-param:
+            vdu-ref: "spgwmme"
+            vdu-monitoring-param-ref: "spgw_memory_util"
diff --git a/tests/examples/vepc_nsd_im.yaml b/tests/examples/vepc_nsd_im.yaml
new file mode 100644
index 0000000..2306936
--- /dev/null
+++ b/tests/examples/vepc_nsd_im.yaml
@@ -0,0 +1,62 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+nsd:nsd-catalog:
+  nsd:
+    - id: vEPC_nsd
+      name: vEPC_nsd
+      short-name: vEPC_nsd # Deprecated
+      description: Generated by OSM package generator
+      vendor: OSM_VNFONB_TF # To designer
+      version: "1.0"
+      constituent-vnfd:
+        - member-vnf-index: 1
+          vnfd-id-ref: vEPC_vnfd
+      
+      vld:
+        - id: management
+          name: management # Deprecated
+          short-name: management # Deprecated
+          type: ELAN # Deprecated
+          mgmt-network: "true"
+          vim-network-name: osm-ext
+
+          vnfd-connection-point-ref:
+            - member-vnf-index-ref: 1
+              vnfd-id-ref: vEPC_vnfd
+              vnfd-connection-point-ref: spgwmme-mgmt
+            - member-vnf-index-ref: 1
+              vnfd-id-ref: vEPC_vnfd
+              vnfd-connection-point-ref: hss-mgmt
+        - id: s1
+          name: s1
+          short-name: s1
+          type: ELAN
+          vim-network-name: s1
+          vnfd-connection-point-ref:
+            - member-vnf-index-ref: 1
+              vnfd-id-ref: vEPC_vnfd
+              vnfd-connection-point-ref: spgwmme-s1
+              ip-address: 192.168.0.11
+        - id: sgi
+          name: sgi
+          short-name: sgi
+          type: ELAN
+          vim-network-name: sgi
+          vnfd-connection-point-ref:
+            - member-vnf-index-ref: 1
+              vnfd-id-ref: vEPC_vnfd
+              vnfd-connection-point-ref: spgwmme-sgi
+              ip-address: 192.168.2.11
diff --git a/tests/examples/vepc_nsd_sol006.yaml b/tests/examples/vepc_nsd_sol006.yaml
new file mode 100644
index 0000000..21ea2dc
--- /dev/null
+++ b/tests/examples/vepc_nsd_sol006.yaml
@@ -0,0 +1,57 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+nsd:
+  nsd:
+    - id: vEPC_nsd
+      name: vEPC_nsd
+      description: Generated by OSM package generator
+      designer: OSM_VNFONB_TF
+      version: "1.0"
+      vnfd-id:
+        - vEPC_vnfd
+
+      virtual-link-desc:
+        - id: management
+          mgmt-network: "true"
+          provider-network:
+            physical-network: osm-ext
+        - id: s1
+          provider-network:
+            physical-network: s1
+        - id: sgi
+          provider-network:
+            physical-network: sgi
+
+      df:
+        - id: vEPC_DF
+          vnf-profile:
+            - id: vEPC-VNF
+              vnfd-id: vEPC_vnfd
+              virtual-link-connectivity:
+                - virtual-link-profile-id: management
+                  constituent-cpd-id:
+                    - constituent-base-element-id: vEPC_vnfd
+                      constituent-cpd-id: spgwmme-mgmt
+                    - constituent-base-element-id: vEPC_vnfd
+                      constituent-cpd-id: hss-mgmt
+                - virtual-link-profile-id: s1
+                  constituent-cpd-id:
+                    - constituent-base-element-id: vEPC_vnfd
+                      constituent-cpd-id: spgwmme-s1
+                - virtual-link-profile-id: sgi
+                  constituent-cpd-id:
+                    - constituent-base-element-id: vEPC_vnfd
+                      constituent-cpd-id: spgwmme-sgi
diff --git a/tests/examples/vepc_sol006.yaml b/tests/examples/vepc_sol006.yaml
new file mode 100644
index 0000000..436f5cb
--- /dev/null
+++ b/tests/examples/vepc_sol006.yaml
@@ -0,0 +1,217 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+vnfd:
+  id: vEPC_vnfd
+  product-name: vEPC_vnfd
+  description: Generated by OSM package generator
+  provider: OSM_VNFONB_TF
+  version: "1.0"
+  mgmt-cp: spgwmme-mgmt-int #Simplified from mgmt-interface
+  virtual-compute-desc:
+    - id: spgwmme-compute
+      virtual-cpu:
+        num-virtual-cpu: 2
+      virtual-memory:
+        size: 4 # Memory size in GB
+    - id: hss-compute
+      virtual-cpu:
+        num-virtual-cpu: 1
+      virtual-memory:
+        size: 2 # Memory size in GB
+  virtual-storage-desc:
+    - id: spgwmme-storage
+      size-of-storage: 10
+    - id: hss-storage
+      size-of-storage: 10
+  sw-image-desc:
+    - id: nextepc-spgwmme-base
+      name: nextepc-spgwmme-base
+      checksum:
+        hash: # Mandatory?
+    - id: nextepc-hss-bas
+      name: nextepc-hss-bas
+      checksum:
+        hash: # Mandatory?
+  vdu:
+    - id: spgwmme
+      name: spgwmme
+      description: spgwmme
+      cloud-init-file: spgwmme-init
+      virtual-compute-desc: spgwmme-compute
+      virtual-storage-desc: spgwmme-storage
+      sw-image-desc: nextepc-spgwmme-base
+      int-cpd:
+        - id: spgwmme-mgmt-int
+          virtual-network-interface-requirement:
+            - name: eth0
+              virtual-interface:
+                type: PARAVIRT
+        - id: spgwmme-s1-int
+          virtual-network-interface-requirement:
+            - name: eth1
+              virtual-interface:
+                type: PARAVIRT
+        - id: spgwmme-sgi-int
+          virtual-network-interface-requirement:
+            - name: eth2
+              virtual-interface:
+                type: PARAVIRT
+        - id: spgwmme-s6a-int
+          int-virtual-link-desc: s6a # Connection to VLD!
+          virtual-network-interface-requirement:
+            - name: eth3
+              virtual-interface:
+                type: PARAVIRT
+    - id: hss
+      name: hss
+      description: hss
+      cloud-init-file: hss-init
+      virtual-compute-desc: hss-compute
+      virtual-storage-desc: hss-storage
+      sw-image-desc: nextepc-hss-bas
+      int-cpd:
+        - id: hss-mgmt-int
+          virtual-network-interface-requirement:
+            - name: eth0
+              virtual-interface:
+                type: PARAVIRT
+        - id: hss-s6a-int
+          int-virtual-link-desc: s6a # Connection to VLD!
+          virtual-network-interface-requirement:
+            - name: eth1
+              virtual-interface:
+                type: PARAVIRT
+  df:
+    - id: vepc_default
+      vnf-configuration-id: vnf-configuration-example
+      vdu-profile:
+        - id: spgwmme
+          min-number-of-instances: 1
+        - id: hss
+          min-number-of-instances: 1
+          vdu-configuration-id: vdu-configuration-example
+      instantiation-level:
+        - id: default
+          vdu-level:
+            - vdu-id: spgwmme
+              number-of-instances: 1
+            - vdu-id: hss
+              number-of-instances: 1
+      virtual-link-profile:
+        - id: s6a
+          flavour:
+          virtual-link-protocol-data:
+            l3-protocol-data:
+              name: s6a
+              description: s6a network
+              ip-version: ipv4
+              cidr: 10.0.6.0/24
+              dhcp-enabled: true
+      monitoring-parameter:
+        - id: "spgw_cpu_util"
+          name: "spgw_cpu_util"
+          performance-metric: "cpu_load"
+          collection-period: 123456
+          #aggregation-type: AVERAGE # Not included in augments
+          #vdu-monitoring-param: # Not included in augments
+          #  vdu-ref: "spgwmme" # Not included in augments
+          #  vdu-monitoring-param-ref: "spgw_cpu_util" # Not included in augments
+        - id: "spgw_memory_util"
+          name: "spgw_memory_util"
+          #aggregation-type: AVERAGE # Not included in augments
+          #vdu-monitoring-param: # Not included in augments
+          #  vdu-ref: "spgwmme" # Not included in augments
+          #  vdu-monitoring-param-ref: "spgw_memory_util" # Not included in augments
+  vdu-configuration:
+    - id: vdu-configuration-example
+      initial-config-primitive:
+        - seq: "1"
+          name: config
+          parameter:
+            - name: ssh-hostname
+              value: <rw_mgmt_ip>
+            - name: ssh-username
+              value: ubuntu
+            - name: ssh-password
+              value: <password>
+        - seq: "2"
+          name: configure-hss
+          parameter:
+            - name: spgw-ip
+              data-type: STRING
+              value: <spgw_ip>
+            - name: hss-ip
+              data-type: STRING
+              value: <hss_ip>
+        - seq: "3"
+          name: restart-hss
+      juju:
+        charm: hsscharm
+  vnf-configuration:
+    - id: vnf-configuration-example
+      initial-config-primitive:
+        - seq: "1"
+          name: config
+          parameter:
+            - name: ssh-hostname
+              value: <rw_mgmt_ip>
+            - name: ssh-username
+              value: ubuntu
+            - name: ssh-password
+              value: <password>
+        - seq: "2"
+          name: configure-spgw
+          parameter:
+            - name: spgw-ip
+              data-type: STRING
+              value: <spgw_ip>
+            - name: hss-ip
+              data-type: STRING
+              value: <hss_ip>
+        - seq: "3"
+          name: restart-spgw
+      config-primitive:
+        - name: add-route
+          parameter:
+            - name: external-prefix
+              data-type: STRING
+              default-value: "8.8.8.8/32"
+            - name: next-hop
+              data-type: STRING
+              default-value: "192.168.2.1"
+      juju:
+        charm: spgwcharm
+  int-virtual-link-desc:
+    - id: s6a
+  ext-cpd:
+    # SPGWMME
+    - id: spgwmme-mgmt-ext
+      int-cpd: # Connection to int-cpd
+        vdu-id: spgwmme
+        cpd: spgwmme-mgmt-int
+    - id: spgwmme-s1-ext
+      int-cpd: # Connection to int-cpd
+        vdu-id: spgwmme
+        cpd: spgwmme-mgmt-int
+    - id: spgwmme-sgi-ext
+      int-cpd: # Connection to int-cpd
+        vdu-id: spgwmme
+        cpd: spgwmme-mgmt-int
+    # HSS
+    - id: hss-mgmt-ext
+      int-cpd: # Connection to int-cpd
+        vdu-id: spgwmme
+        cpd: spgwmme-mgmt-int
diff --git a/tests/examples/vnfd_im.yaml b/tests/examples/vnfd_im.yaml
new file mode 100644
index 0000000..587cb89
--- /dev/null
+++ b/tests/examples/vnfd_im.yaml
@@ -0,0 +1,87 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+# Using old OSM IM model
+
+vnfd:vnfd-catalog:
+  vnfd:
+      id: vnfd
+
+      mgmt-interface:
+        cp: vnf-mgmt
+
+      connection-point:
+        - id: vnf-mgmt
+          name: vnf-mgmt
+          short-name: vnf-mgmt
+          type: VPORT
+        - id: vnf-data
+          name: vnf-data
+          short-name: vnf-data
+          type: VPORT
+
+      internal-vld:
+        - id: internal
+          name: internal
+          short-name: internal
+          type: ELAN
+          internal-connection-point:
+            - id-ref: mgmtVM-internal
+            - id-ref: dataVM-internal
+
+      vdu:
+        - id: mgmtVM
+
+          interface:
+            - name: mgmtVM-eth0
+              position: "1"
+              type: EXTERNAL
+              virtual-interface:
+                type: VIRTIO
+              external-connection-point-ref: vnf-mgmt
+            - name: mgmtVM-eth1
+              position: "2"
+              type: INTERNAL
+              virtual-interface:
+                type: VIRTIO
+              internal-connection-point-ref: mgmtVM-internal
+
+          internal-connection-point:
+            - id: mgmtVM-internal
+              name: mgmtVM-internal
+              short-name: mgmtVM-internal
+              type: VPORT
+
+        - id: dataVM
+
+          interface:
+            - name: dataVM-eth0
+              position: "1"
+              type: INTERNAL
+              virtual-interface:
+                type: VIRTIO
+              internal-connection-point-ref: dataVM-internal
+            - name: dataVM-xe0
+              position: "2"
+              type: EXTERNAL
+              virtual-interface:
+                type: VIRTIO
+              external-connection-point-ref: vnf-data
+
+          internal-connection-point:
+            - id: dataVM-internal
+              name: dataVM-internal
+              short-name: dataVM-internal
+              type: VPORT
diff --git a/tests/examples/vnfd_sol006.yaml b/tests/examples/vnfd_sol006.yaml
new file mode 100644
index 0000000..f4e82a9
--- /dev/null
+++ b/tests/examples/vnfd_sol006.yaml
@@ -0,0 +1,66 @@
+#  Copyright 2020 Whitestack LLC
+#
+#  Licensed 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.
+
+# Using new SOL006-based OSM model
+
+vnfd:
+  id: vnfd
+  mgmt-cp: vnf-mgmt
+
+  ext-cpd:
+    - id: vnf-mgmt-ext
+      int-cpd:
+        vdu-id: mgmtVM
+        cpd: vnf-mgmt-int
+    - id: vnf-data-ext
+      int-cpd:
+        vdu-id: dataVM
+        cpd: vnf-data-int
+
+  int-virtual-link-desc:
+    - id: internal
+
+  vdu:
+    - id: mgmtVM
+      int-cpd:
+        - id: vnf-mgmt-int
+          virtual-network-interface-requirement:
+            - name: mgmtVM-eth0
+              position: "1"
+              virtual-interface:
+                type: VIRTIO
+        - id: mgmtVM-internal
+          int-virtual-link-desc: internal
+          virtual-network-interface-requirement:
+            - name: mgmtVM-eth1
+              position: "2"
+              virtual-interface:
+                type: VIRTIO
+
+    - id: dataVM
+      int-cpd:
+        - id: dataVM-internal
+          int-virtual-link-desc: internal
+          virtual-network-interface-requirement:
+            - name: dataVM-eth0
+              position: "1"
+              virtual-interface:
+                type: VIRTIO
+        - id: vnf-data-int
+          virtual-network-interface-requirement:
+            - name: dataVM-xe0
+              position: "2"
+              virtual-interface:
+                type: VIRTIO