2 * ============LICENSE_START=======================================================
3 * Copyright (C) 2022-2023 Nordix Foundation
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.ncmp.rest.controller.handlers
23 import org.spockframework.spring.SpringBean
24 import spock.lang.Specification
26 class NcmpDatastoreRequestHandlerFactorySpec extends Specification {
29 NcmpCachedResourceRequestHandler mockNcmpCachedResourceRequestHandler = new NcmpCachedResourceRequestHandler(null)
32 NcmpPassthroughResourceRequestHandler mockNcmpPassthroughResourceRequestHandler = new NcmpPassthroughResourceRequestHandler()
34 def objectUnderTest = new NcmpDatastoreResourceRequestHandlerFactory(mockNcmpCachedResourceRequestHandler, mockNcmpPassthroughResourceRequestHandler)
36 def 'Creating ncmp datastore request handlers.'() {
37 when: 'a ncmp datastore request handler is created for #datastoreType'
38 def result = objectUnderTest.getNcmpResourceRequestHandler(datastoreType)
39 then: 'the result is of the expected class'
40 result.class == expectedClass
41 where: 'the following type of datastore is used'
42 datastoreType || expectedClass
43 DatastoreType.OPERATIONAL || NcmpCachedResourceRequestHandler
44 DatastoreType.PASSTHROUGH_OPERATIONAL || NcmpPassthroughResourceRequestHandler
45 DatastoreType.PASSTHROUGH_RUNNING || NcmpPassthroughResourceRequestHandler