2 * ============LICENSE_START=======================================================
3 * Copyright (C) 2023 TechMahindra Ltd.
4 * ================================================================================
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
17 * SPDX-License-Identifier: Apache-2.0
18 * ============LICENSE_END=========================================================
21 package org.onap.cps.spi.model
23 import spock.lang.Specification
25 class DeltaReportBuilderSpec extends Specification{
27 def 'Generating delta report with for add action'() {
28 when: 'delta report is generated'
29 def result = new DeltaReportBuilder()
32 .withTargetData(['data':'leaf-data'])
34 then: 'the delta report contains the "add" action with expected target data'
35 assert result.action == 'add'
36 assert result.xpath == '/xpath'
37 assert result.targetData == ['data': 'leaf-data']
40 def 'Generating delta report with attributes for remove action'() {
41 when: 'delta report is generated'
42 def result = new DeltaReportBuilder()
45 .withSourceData(['data':'leaf-data'])
47 then: 'the delta report contains the "remove" action with expected source data'
48 assert result.action == 'remove'
49 assert result.xpath == '/xpath'
50 assert result.sourceData == ['data': 'leaf-data']