| /******************************************************************************* |
| * Copyright (c) 2010-2014 SAP AG and others. |
| * All rights reserved. This program and the accompanying materials |
| * are 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: |
| * SAP AG - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.skalli.commands; |
| |
| import static org.easymock.EasyMock.createMock; |
| import static org.eclipse.skalli.testutil.StorageKey.keyOf; |
| import static org.junit.Assert.assertTrue; |
| |
| import java.io.ByteArrayInputStream; |
| import java.io.UnsupportedEncodingException; |
| import java.util.Arrays; |
| |
| import org.eclipse.osgi.framework.console.CommandInterpreter; |
| import org.eclipse.skalli.testutil.HashMapStorageService; |
| import org.eclipse.skalli.testutil.TestUUIDs; |
| import org.junit.Test; |
| |
| @SuppressWarnings("nls") |
| public class StorageCommandTest { |
| static final String CATEGORY_PROJECT = "Project"; |
| static final String KEY_1 = TestUUIDs.TEST_UUIDS[0].toString(); |
| static final String KEY_2 = TestUUIDs.TEST_UUIDS[1].toString(); |
| static final byte[] TEST_CONTENT_1 = getBytesUTF8("test content bla bal"); |
| static final byte[] TEST_CONTENT_2 = getBytesUTF8("test content hello world"); |
| |
| @Test |
| public void testCopy() throws Exception { |
| HashMapStorageService source = new HashMapStorageService(); |
| source.write(CATEGORY_PROJECT, KEY_1, new ByteArrayInputStream(TEST_CONTENT_1)); |
| source.write(CATEGORY_PROJECT, KEY_2, new ByteArrayInputStream(TEST_CONTENT_2)); |
| |
| HashMapStorageService destination = new HashMapStorageService(); |
| CommandInterpreter intr = createMock(CommandInterpreter.class); |
| StorageCommand.copy(source, destination, CATEGORY_PROJECT, intr); |
| |
| assertTrue(Arrays.equals( |
| TEST_CONTENT_1, |
| destination.asMap().get(keyOf(CATEGORY_PROJECT, KEY_1)))); |
| assertTrue(Arrays.equals( |
| TEST_CONTENT_2, |
| destination.asMap().get(keyOf(CATEGORY_PROJECT, KEY_2)))); |
| } |
| |
| private static byte[] getBytesUTF8(String s) { |
| try { |
| return s.getBytes("UTF-8"); |
| } catch (UnsupportedEncodingException e) { |
| throw new IllegalStateException("UTF-8"); |
| } |
| } |
| |
| } |