/******************************************************************************* * Copyright (c) 2016 Red Hat, Inc. * Distributed under license by Red Hat, Inc. All rights reserved. * This program is made available under the terms of the * Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Red Hat, Inc. - initial API and implementation ******************************************************************************/ package com.openshift.internal.restclient.capability.resources; import static org.junit.Assert.*; import static org.mockito.Mockito.*; import java.util.Arrays; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.runners.MockitoJUnitRunner; import com.openshift.restclient.IClient; import com.openshift.restclient.IResourceFactory; import com.openshift.restclient.capability.resources.IImageStreamImportCapability; import com.openshift.restclient.http.IHttpConstants; import com.openshift.restclient.images.DockerImageURI; import com.openshift.restclient.model.IProject; import com.openshift.restclient.model.IStatus; import com.openshift.restclient.model.image.IImageStreamImport; /** * * @author jeff.cantrill * */ @RunWith(MockitoJUnitRunner.class) public class ImageStreamImportCapabilityTest { private IImageStreamImportCapability cap; @Mock private IProject project; @Mock private IClient client; @Mock private IResourceFactory factory; @Mock private IImageStreamImport streamImport; @Mock private IStatus status; @Before public void setUp() throws Exception { when(project.getName()).thenReturn("aProjectName"); when(client.getResourceFactory()).thenReturn(factory); when(factory.stub(anyString(), anyString(), anyString())).thenReturn(streamImport); when(client.create(any(IImageStreamImport.class))).thenReturn(streamImport); when(status.getStatus()).thenReturn("Success"); when(streamImport.getImageStatus()).thenReturn(Arrays.asList(status)); cap = new ImageStreamImportCapability(project, client); } @Test public void testImportImageInfo() { DockerImageURI image = new DockerImageURI("foo/hello-world"); IImageStreamImport imported = cap.importImageMetadata(image); assertEquals(imported, streamImport); verify(client).create(streamImport); verify(streamImport).addImage("DockerImage", image); } }