/*-
 * #%L
 * com.redhat.labs.nexus:nexus-openshift-plugin
 * %%
 * Copyright (C) 2008 - 2019 Red Hat
 * %%
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 * 
 * This Source Code may also be made available under the following Secondary
 * Licenses when the conditions for such availability set forth in the Eclipse
 * Public License, v. 2.0 are satisfied: GNU General Public License, version 2
 * with the GNU Classpath Exception which is
 * available at https://www.gnu.org/software/classpath/license.html.
 * 
 * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
 * #L%
 */
package com.redhat.labs.nexus.openshift

import io.kubernetes.client.models.V1ConfigMap
import org.sonatype.nexus.BlobStoreApi
import spock.lang.Specification

class BlobStoreConfigWatcherSpec extends Specification {
  def "test addBlobStore"() {
    given:
      def configMap = Mock(V1ConfigMap) {
        getMetadata() >> [name: 'testBlobStore']
        getData() >> [type: 'File']
      }
      def blobStoreApi = Mock(BlobStoreApi)
      def underTest = new BlobStoreConfigWatcher()
      underTest.blobStoreApi = blobStoreApi

    when:
      underTest.addBlobStore(configMap)

    then:
      1 * blobStoreApi.createFileBlobStore('testBlobStore', '/nexus-data/blobs/testBlobStore')
  }
}
