You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ch...@apache.org on 2012/11/21 15:57:47 UTC
[4/5] Moving api tests into a similar package structure as other tests
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/com/cloud/api/commands/AddVpnUserCmdTest.java
----------------------------------------------------------------------
diff --git a/api/test/com/cloud/api/commands/AddVpnUserCmdTest.java b/api/test/com/cloud/api/commands/AddVpnUserCmdTest.java
deleted file mode 100644
index 3e2b94a..0000000
--- a/api/test/com/cloud/api/commands/AddVpnUserCmdTest.java
+++ /dev/null
@@ -1,143 +0,0 @@
-// Licensed to the Apache Software Foundation (ASF) under one
-// or more contributor license agreements. See the NOTICE file
-// distributed with this work for additional information
-// regarding copyright ownership. The ASF licenses this file
-// to you under the Apache License, Version 2.0 (the
-// "License"); you may not use this file except in compliance
-// with the License. You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing,
-// software distributed under the License is distributed on an
-// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-// KIND, either express or implied. See the License for the
-// specific language governing permissions and limitations
-// under the License.
-package com.cloud.api.commands;
-
-import junit.framework.Assert;
-import junit.framework.TestCase;
-
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-import org.mockito.Mockito;
-
-import com.cloud.api.ServerApiException;
-import com.cloud.network.VpnUser;
-import com.cloud.network.vpn.RemoteAccessVpnService;
-import com.cloud.user.Account;
-import com.cloud.user.AccountService;
-
-public class AddVpnUserCmdTest extends TestCase {
-
-
- private AddVpnUserCmd addVpnUserCmd;
-
- @Rule
- public ExpectedException expectedException = ExpectedException.none();
-
- @Before
- public void setUp() {
-
- addVpnUserCmd = new AddVpnUserCmd() {
-
- @Override
- public Long getEntityId() {
- return 2L;
- }
-
- @Override
- public long getEntityOwnerId() {
- return 2L;
- }
-
- @Override
- public String getUserName() {
- return "User Name";
- }
-
- @Override
- public String getPassword() {
- return "password";
- }
-
- };
- }
-
- /*@Test
- public void testExecuteVpnUserNotFound() {
-
- EntityManager entityManager = Mockito.mock(EntityManager.class);
-
- Mockito.when(entityManager.findById(VpnUser.class, Mockito.anyLong())).thenReturn(null);
-
- addVpnUserCmd._entityMgr = entityManager;
- try {
- addVpnUserCmd.execute();
- } catch (Exception e) {
- }
-
- }
-
-
- @Test
- public void testExecuteVpnUserFound() {
-
- EntityManager entityManager = Mockito.mock(EntityManager.class);
- addVpnUserCmd._entityMgr = entityManager;
-
- VpnUser vpnUser = Mockito.mock(VpnUser.class);
- Mockito.when(entityManager.findById(VpnUser.class, Mockito.anyLong())).thenReturn(vpnUser);
- addVpnUserCmd.execute();
-
- }*/
-
- @Test
- public void testCreateSuccess() {
-
-
- AccountService accountService = Mockito.mock(AccountService.class);
-
- Account account = Mockito.mock(Account.class);
- Mockito.when(accountService.getAccount(Mockito.anyLong())).thenReturn(account);
-
- addVpnUserCmd._accountService = accountService;
-
- RemoteAccessVpnService ravService = Mockito.mock(RemoteAccessVpnService.class);
-
- VpnUser vpnUser = Mockito.mock(VpnUser.class);
- Mockito.when(ravService.addVpnUser(Mockito.anyLong(), Mockito.anyString(), Mockito.anyString())).thenReturn(vpnUser);
-
- addVpnUserCmd._ravService = ravService;
-
- addVpnUserCmd.create();
-
- }
-
-
- @Test
- public void testCreateFailure() {
-
- AccountService accountService = Mockito.mock(AccountService.class);
- Account account = Mockito.mock(Account.class);
- Mockito.when(accountService.getAccount(Mockito.anyLong())).thenReturn(account);
-
- addVpnUserCmd._accountService = accountService;
-
- RemoteAccessVpnService ravService = Mockito.mock(RemoteAccessVpnService.class);
- Mockito.when(ravService.addVpnUser(Mockito.anyLong(), Mockito.anyString(), Mockito.anyString())).thenReturn(null);
-
- addVpnUserCmd._ravService = ravService;
-
- try {
- addVpnUserCmd.create();
- } catch (ServerApiException exception) {
- Assert.assertEquals("Failed to add vpn user", exception.getDescription());
- }
-
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/AgentControlAnswerTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/AgentControlAnswerTest.java b/api/test/src/com/cloud/agent/api/test/AgentControlAnswerTest.java
new file mode 100644
index 0000000..5507409
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/AgentControlAnswerTest.java
@@ -0,0 +1,32 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class AgentControlAnswerTest {
+ AgentControlCommand acc = new AgentControlCommand();
+ AgentControlAnswer aca = new AgentControlAnswer(acc);
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = acc.executeInSequence();
+ assertFalse(b);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/AgentControlCommandTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/AgentControlCommandTest.java b/api/test/src/com/cloud/agent/api/test/AgentControlCommandTest.java
new file mode 100644
index 0000000..358a607
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/AgentControlCommandTest.java
@@ -0,0 +1,31 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class AgentControlCommandTest {
+ AgentControlCommand acc = new AgentControlCommand();
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = acc.executeInSequence();
+ assertFalse(b);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/AnswerTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/AnswerTest.java b/api/test/src/com/cloud/agent/api/test/AnswerTest.java
new file mode 100644
index 0000000..3d716c3
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/AnswerTest.java
@@ -0,0 +1,67 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class AnswerTest {
+ AgentControlCommand acc = new AgentControlCommand();
+ Answer a = new Answer(acc, true, "details");
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = a.executeInSequence();
+ assertFalse(b);
+ }
+
+ @Test
+ public void testGetResult() {
+ boolean b = a.getResult();
+ assertTrue(b);
+ }
+
+ @Test
+ public void testGetDetails() {
+ String d = a.getDetails();
+ assertTrue(d.equals("details"));
+ }
+
+ @Test
+ public void testCreateUnsupportedCommandAnswer() {
+ UnsupportedAnswer usa = Answer.createUnsupportedCommandAnswer(acc);
+ boolean b = usa.executeInSequence();
+ assertFalse(b);
+
+ b = usa.getResult();
+ assertFalse(b);
+
+ String d = usa.getDetails();
+ assertTrue(d.equals("Unsupported command issued:" + acc.toString() + ". Are you sure you got the right type of server?"));
+
+ usa = Answer.createUnsupportedVersionAnswer(acc);
+ b = usa.executeInSequence();
+ assertFalse(b);
+
+ b = usa.getResult();
+ assertFalse(b);
+
+ d = usa.getDetails();
+ assertTrue(d.equals("Unsuppored Version."));
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/AttachIsoCommandTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/AttachIsoCommandTest.java b/api/test/src/com/cloud/agent/api/test/AttachIsoCommandTest.java
new file mode 100644
index 0000000..c9d71b0
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/AttachIsoCommandTest.java
@@ -0,0 +1,77 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+import com.cloud.agent.api.*;
+
+public class AttachIsoCommandTest {
+ AttachIsoCommand aic = new AttachIsoCommand("vmname", "isopath", false);
+
+ @Test
+ public void testGetVmName() {
+ String vmName = aic.getVmName();
+ assertTrue(vmName.equals("vmname"));
+ }
+
+ @Test
+ public void testGetIsoPath() {
+ String isoPath = aic.getIsoPath();
+ assertTrue(isoPath.equals("isopath"));
+ }
+
+ @Test
+ public void testIsAttach() {
+ boolean b = aic.isAttach();
+ assertFalse(b);
+ }
+
+ @Test
+ public void testGetStoreUrl() {
+ aic.setStoreUrl("http://incubator.apache.org/cloudstack/");
+ String url = aic.getStoreUrl();
+ assertTrue(url.equals("http://incubator.apache.org/cloudstack/"));
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = aic.executeInSequence();
+ assertTrue(b);
+ }
+
+ @Test
+ public void testAllowCaching() {
+ boolean b = aic.allowCaching();
+ assertTrue(b);
+ }
+
+ @Test
+ public void testGetWait() {
+ int b;
+ aic.setWait(5);
+ b = aic.getWait();
+ assertEquals(b, 5);
+ aic.setWait(-3);
+ b = aic.getWait();
+ assertEquals(b, -3);
+ aic.setWait(0);
+ b = aic.getWait();
+ assertEquals(b, 0);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/AttachVolumeAnswerTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/AttachVolumeAnswerTest.java b/api/test/src/com/cloud/agent/api/test/AttachVolumeAnswerTest.java
new file mode 100644
index 0000000..ed27ed1
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/AttachVolumeAnswerTest.java
@@ -0,0 +1,59 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import com.cloud.storage.Storage.StoragePoolType;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class AttachVolumeAnswerTest {
+ AttachVolumeCommand avc = new AttachVolumeCommand(true, "vmname", StoragePoolType.Filesystem, "vFolder", "vPath", "vName", 123456789L, "chainInfo");
+ AttachVolumeAnswer ava1 = new AttachVolumeAnswer(avc);
+ String results = "";
+ AttachVolumeAnswer ava2 = new AttachVolumeAnswer(avc, results);
+ Long deviceId = 10L;
+ AttachVolumeAnswer ava3 = new AttachVolumeAnswer(avc, deviceId);
+
+ @Test
+ public void testGetDeviceId() {
+ Long dId = ava1.getDeviceId();
+ assertTrue(dId == null);
+
+ dId = ava2.getDeviceId();
+ assertTrue(dId == null);
+
+ dId = ava3.getDeviceId();
+ Long expected = 10L;
+ assertEquals(expected, dId);
+ }
+
+ @Test
+ public void testGetChainInfo() {
+ ava1.setChainInfo("chainInfo");
+ String chainInfo = ava1.getChainInfo();
+ assertTrue(chainInfo.equals("chainInfo"));
+
+ ava2.setChainInfo("chainInfo");
+ chainInfo = ava2.getChainInfo();
+ assertTrue(chainInfo.equals("chainInfo"));
+
+ ava3.setChainInfo("chainInfo");
+ chainInfo = ava3.getChainInfo();
+ assertTrue(chainInfo.equals("chainInfo"));
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/AttachVolumeCommandTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/AttachVolumeCommandTest.java b/api/test/src/com/cloud/agent/api/test/AttachVolumeCommandTest.java
new file mode 100644
index 0000000..4a09371
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/AttachVolumeCommandTest.java
@@ -0,0 +1,116 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.storage.Storage.StoragePoolType;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+import com.cloud.agent.api.*;
+
+public class AttachVolumeCommandTest {
+ AttachVolumeCommand avc = new AttachVolumeCommand(true, "vmname", StoragePoolType.Filesystem, "vFolder", "vPath", "vName", 123456789L, "chainInfo");
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = avc.executeInSequence();
+ assertTrue(b);
+ }
+
+ @Test
+ public void testGetAttach() {
+ boolean b = avc.getAttach();
+ assertTrue(b);
+ }
+
+ @Test
+ public void testGetVmName() {
+ String vmName = avc.getVmName();
+ assertTrue(vmName.equals("vmname"));
+ }
+
+ @Test
+ public void testGetPooltype() {
+ StoragePoolType pt = avc.getPooltype();
+ assertTrue(pt.equals(StoragePoolType.Filesystem));
+
+ avc.setPooltype(StoragePoolType.NetworkFilesystem);
+ pt = avc.getPooltype();
+ assertTrue(pt.equals(StoragePoolType.NetworkFilesystem));
+
+ avc.setPooltype(StoragePoolType.IscsiLUN);
+ pt = avc.getPooltype();
+ assertTrue(pt.equals(StoragePoolType.IscsiLUN));
+
+ avc.setPooltype(StoragePoolType.Iscsi);
+ pt = avc.getPooltype();
+ assertTrue(pt.equals(StoragePoolType.Iscsi));
+ }
+
+ @Test
+ public void testGetVolumeFolder() {
+ String vFolder = avc.getVolumeFolder();
+ assertTrue(vFolder.equals("vFolder"));
+ }
+
+ @Test
+ public void testGetVolumePath() {
+ String vPath = avc.getVolumePath();
+ assertTrue(vPath.equals("vPath"));
+ }
+
+ @Test
+ public void testGetVolumeName() {
+ String vName = avc.getVolumeName();
+ assertTrue(vName.equals("vName"));
+ }
+
+ @Test
+ public void testGetDeviceId() {
+ Long dId = avc.getDeviceId();
+ Long expected = 123456789L;
+ assertEquals(expected, dId);
+
+ avc.setDeviceId(5L);
+ dId = avc.getDeviceId();
+ expected = 5L;
+ assertEquals(expected, dId);
+
+ avc.setDeviceId(0L);
+ dId = avc.getDeviceId();
+ expected = 0L;
+ assertEquals(expected, dId);
+
+ avc.setDeviceId(-5L);
+ dId = avc.getDeviceId();
+ expected = -5L;
+ assertEquals(expected, dId);
+ }
+
+ @Test
+ public void testGetPoolUuid() {
+ avc.setPoolUuid("420fa39c-4ef1-a83c-fd93-46dc1ff515ae");
+ String pUuid = avc.getPoolUuid();
+ assertTrue(pUuid.equals("420fa39c-4ef1-a83c-fd93-46dc1ff515ae"));
+ }
+
+ @Test
+ public void testGetWait() {
+ String cInfo = avc.getChainInfo();
+ assertTrue(cInfo.equals("chainInfo"));
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/BackupSnapshotAnswerTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/BackupSnapshotAnswerTest.java b/api/test/src/com/cloud/agent/api/test/BackupSnapshotAnswerTest.java
new file mode 100644
index 0000000..f03410a
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/BackupSnapshotAnswerTest.java
@@ -0,0 +1,56 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class BackupSnapshotAnswerTest {
+ BackupSnapshotCommand bsc = new BackupSnapshotCommand();
+ BackupSnapshotAnswer bsa = new BackupSnapshotAnswer(bsc, true, "results", "bussname", false);
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = bsa.executeInSequence();
+ assertFalse(b);
+ }
+
+ @Test
+ public void testIsFull() {
+ boolean b = bsa.isFull();
+ assertFalse(b);
+ }
+
+ @Test
+ public void testGetBackupSnapshotName() {
+ String name = bsa.getBackupSnapshotName();
+ assertTrue(name.equals("bussname"));
+ }
+
+ @Test
+ public void testGetResult() {
+ boolean b = bsa.getResult();
+ assertTrue(b);
+ }
+
+ @Test
+ public void testDetails() {
+ String details = bsa.getDetails();
+ assertTrue(details.equals("results"));
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/BackupSnapshotCommandTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/BackupSnapshotCommandTest.java b/api/test/src/com/cloud/agent/api/test/BackupSnapshotCommandTest.java
new file mode 100644
index 0000000..c84e24b
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/BackupSnapshotCommandTest.java
@@ -0,0 +1,220 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import static org.junit.Assert.*;
+import org.junit.Test;
+import com.cloud.agent.api.to.StorageFilerTO;
+import com.cloud.agent.api.to.SwiftTO;
+import com.cloud.storage.StoragePool;
+import com.cloud.storage.Storage.StoragePoolType;
+import com.cloud.storage.StoragePoolStatus;
+import java.util.Date;
+import java.text.SimpleDateFormat;
+import java.text.ParseException;
+
+public class BackupSnapshotCommandTest {
+ public StoragePool pool = new StoragePool() {
+ public long getId() {return 1L;};
+ public String getName() {return "name";};
+ public String getUuid() {return "bed9f83e-cac3-11e1-ac8a-0050568b007e";};
+ public StoragePoolType getPoolType() {return StoragePoolType.Filesystem;};
+ public Date getCreated() {
+ Date date = null;
+ try{
+ date = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").parse("01/01/1970 12:12:12");
+ }
+ catch (ParseException e) {
+ e.printStackTrace();
+ }
+ return date;
+ }
+ public Date getUpdateTime() {return new Date();};
+ public long getDataCenterId() {return 0L;};
+ public long getCapacityBytes() {return 0L;};
+ public long getAvailableBytes() {return 0L;};
+ public Long getClusterId() {return 0L;};
+ public String getHostAddress() {return "hostAddress";};
+ public String getPath() {return "path";};
+ public String getUserInfo() {return "userInfo";};
+ public boolean isShared() {return false;};
+ public boolean isLocal() {return false;};
+ public StoragePoolStatus getStatus() {return StoragePoolStatus.Up;};
+ public int getPort() {return 25;};
+ public Long getPodId() {return 0L;};
+ };
+
+ BackupSnapshotCommand bsc = new BackupSnapshotCommand(
+ "primaryStoragePoolNameLabel",
+ "http://secondary.Storage.Url",
+ 101L,
+ 102L,
+ 103L,
+ 104L,
+ "vPath",
+ pool,
+ "420fa39c-4ef1-a83c-fd93-46dc1ff515ae",
+ "sName",
+ "9012793e-0657-11e2-bebc-0050568b0057",
+ "7167e0b2-f5b0-11e1-8414-0050568b0057",
+ false,
+ "vmName",
+ 5
+ );
+
+ BackupSnapshotCommand bsc1 = new BackupSnapshotCommand();
+
+ @Test
+ public void testGetPrimaryStoragePoolNameLabel() {
+ String label = bsc.getPrimaryStoragePoolNameLabel();
+ assertTrue(label.equals("primaryStoragePoolNameLabel"));
+ }
+
+ @Test
+ public void testGetSecondaryStorageUrl() {
+ String url = bsc.getSecondaryStorageUrl();
+ assertTrue(url.equals("http://secondary.Storage.Url"));
+ }
+
+ @Test
+ public void testGetDataCenterId() {
+ Long dcId = bsc.getDataCenterId();
+ Long expected = 101L;
+ assertEquals(expected, dcId);
+ }
+
+ @Test
+ public void testGetAccountId() {
+ Long aId = bsc.getAccountId();
+ Long expected = 102L;
+ assertEquals(expected, aId);
+ }
+
+ @Test
+ public void testGetVolumeId() {
+ Long vId = bsc.getVolumeId();
+ Long expected = 103L;
+ assertEquals(expected, vId);
+ }
+
+ @Test
+ public void testGetSnapshotId() {
+ Long ssId = bsc.getSnapshotId();
+ Long expected = 104L;
+ assertEquals(expected, ssId);
+ }
+
+ @Test
+ public void testGetPool() {
+ StorageFilerTO pool = bsc.getPool();
+
+ Long id = pool.getId();
+ Long expectedL = 1L;
+ assertEquals(expectedL, id);
+
+ String uuid = pool.getUuid();
+ assertTrue(uuid.equals("bed9f83e-cac3-11e1-ac8a-0050568b007e"));
+
+ String host = pool.getHost();
+ assertTrue(host.equals("hostAddress"));
+
+ String path = pool.getPath();
+ assertTrue(path.equals("path"));
+
+ String userInfo = pool.getUserInfo();
+ assertTrue(userInfo.equals("userInfo"));
+
+ Integer port = pool.getPort();
+ Integer expectedI = 25;
+ assertEquals(expectedI, port);
+
+ StoragePoolType type = pool.getType();
+ assertEquals(StoragePoolType.Filesystem, type);
+
+ String str = pool.toString();
+ assertTrue(str.equals("Pool[" + id.toString() + "|" + host + ":" + port.toString() + "|" + path + "]"));
+ }
+
+ @Test
+ public void testGetCreated() {
+ try{
+ Date date = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").parse("01/01/1970 12:12:12");
+ Date d = pool.getCreated();
+ assertTrue(d.compareTo(date) == 0);
+ }
+ catch (ParseException e) {
+ e.printStackTrace();
+ }
+ }
+
+ @Test
+ public void testGetSwift() {
+ SwiftTO s1 = new SwiftTO();
+ bsc.setSwift(s1);
+ SwiftTO s2 = bsc.getSwift();
+ assertEquals(s1, s2);
+ }
+
+ @Test
+ public void testGetSnapshotName() {
+ String ssName = bsc.getSnapshotName();
+ assertTrue(ssName.equals("sName"));
+ }
+
+ @Test
+ public void testGetSnapshotUuid() {
+ String uuid = bsc.getSnapshotUuid();
+ assertTrue(uuid.equals("420fa39c-4ef1-a83c-fd93-46dc1ff515ae"));
+ }
+
+ @Test
+ public void testGetPrevSnapshotUuid() {
+ String uuid = bsc.getPrevSnapshotUuid();
+ assertTrue(uuid.equals("9012793e-0657-11e2-bebc-0050568b0057"));
+ }
+
+ @Test
+ public void testGetPrevBackupUuid() {
+ String uuid = bsc.getPrevBackupUuid();
+ assertTrue(uuid.equals("7167e0b2-f5b0-11e1-8414-0050568b0057"));
+ }
+
+ @Test
+ public void testGetVolumePath() {
+ String path = bsc.getVolumePath();
+ assertTrue(path.equals("vPath"));
+
+ bsc.setVolumePath("vPath1");
+ path = bsc.getVolumePath();
+ assertTrue(path.equals("vPath1"));
+
+ bsc1.setVolumePath("vPath2");
+ path = bsc1.getVolumePath();
+ assertTrue(path.equals("vPath2"));
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = bsc.executeInSequence();
+ assertFalse(b);
+
+ b = bsc1.executeInSequence();
+ assertFalse(b);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/BumpUpPriorityCommandTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/BumpUpPriorityCommandTest.java b/api/test/src/com/cloud/agent/api/test/BumpUpPriorityCommandTest.java
new file mode 100644
index 0000000..df31730
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/BumpUpPriorityCommandTest.java
@@ -0,0 +1,73 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import com.cloud.agent.api.routing.*;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class BumpUpPriorityCommandTest {
+ BumpUpPriorityCommand bupc = new BumpUpPriorityCommand();
+
+ // test super class
+ @Test
+ public void testSuperGetAccessDetail() {
+ String value;
+ bupc.setAccessDetail(NetworkElementCommand.ACCOUNT_ID, "accountID");
+ value = bupc.getAccessDetail(NetworkElementCommand.ACCOUNT_ID);
+ assertTrue(value.equals("accountID"));
+
+ bupc.setAccessDetail(NetworkElementCommand.GUEST_NETWORK_CIDR, "GuestNetworkCIDR");
+ value = bupc.getAccessDetail(NetworkElementCommand.GUEST_NETWORK_CIDR);
+ assertTrue(value.equals("GuestNetworkCIDR"));
+
+ bupc.setAccessDetail(NetworkElementCommand.GUEST_NETWORK_GATEWAY, "GuestNetworkGateway");
+ value = bupc.getAccessDetail(NetworkElementCommand.GUEST_NETWORK_GATEWAY);
+ assertTrue(value.equals("GuestNetworkGateway"));
+
+ bupc.setAccessDetail(NetworkElementCommand.GUEST_VLAN_TAG, "GuestVlanTag");
+ value = bupc.getAccessDetail(NetworkElementCommand.GUEST_VLAN_TAG);
+ assertTrue(value.equals("GuestVlanTag"));
+
+ bupc.setAccessDetail(NetworkElementCommand.ROUTER_NAME, "RouterName");
+ value = bupc.getAccessDetail(NetworkElementCommand.ROUTER_NAME);
+ assertTrue(value.equals("RouterName"));
+
+ bupc.setAccessDetail(NetworkElementCommand.ROUTER_IP, "RouterIP");
+ value = bupc.getAccessDetail(NetworkElementCommand.ROUTER_IP);
+ assertTrue(value.equals("RouterIP"));
+
+ bupc.setAccessDetail(NetworkElementCommand.ROUTER_GUEST_IP, "RouterGuestIP");
+ value = bupc.getAccessDetail(NetworkElementCommand.ROUTER_GUEST_IP);
+ assertTrue(value.equals("RouterGuestIP"));
+
+ bupc.setAccessDetail(NetworkElementCommand.ZONE_NETWORK_TYPE, "ZoneNetworkType");
+ value = bupc.getAccessDetail(NetworkElementCommand.ZONE_NETWORK_TYPE);
+ assertTrue(value.equals("ZoneNetworkType"));
+
+ bupc.setAccessDetail(NetworkElementCommand.GUEST_BRIDGE, "GuestBridge");
+ value = bupc.getAccessDetail(NetworkElementCommand.GUEST_BRIDGE);
+ assertTrue(value.equals("GuestBridge"));
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = bupc.executeInSequence();
+ assertFalse(b);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/CancelCommandTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/CancelCommandTest.java b/api/test/src/com/cloud/agent/api/test/CancelCommandTest.java
new file mode 100644
index 0000000..f6624ac
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/CancelCommandTest.java
@@ -0,0 +1,43 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class CancelCommandTest {
+ CancelCommand cc = new CancelCommand(123456789L, "goodreason");
+
+ @Test
+ public void testGetSequence() {
+ Long s = cc.getSequence();
+ assertTrue(123456789L == s);
+ }
+
+ @Test
+ public void testGetReason() {
+ String r = cc.getReason();
+ assertTrue(r.equals("goodreason"));
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = cc.executeInSequence();
+ assertFalse(b);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/ChangeAgentAnswerTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/ChangeAgentAnswerTest.java b/api/test/src/com/cloud/agent/api/test/ChangeAgentAnswerTest.java
new file mode 100644
index 0000000..ab93648
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/ChangeAgentAnswerTest.java
@@ -0,0 +1,39 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import com.cloud.host.Status.Event;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class ChangeAgentAnswerTest {
+ ChangeAgentCommand cac = new ChangeAgentCommand(123456789L, Event.AgentConnected);
+ ChangeAgentAnswer caa = new ChangeAgentAnswer(cac, true);
+
+ @Test
+ public void testGetResult() {
+ boolean b = caa.getResult();
+ assertTrue(b);
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = caa.executeInSequence();
+ assertFalse(b);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/ChangeAgentCommandTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/ChangeAgentCommandTest.java b/api/test/src/com/cloud/agent/api/test/ChangeAgentCommandTest.java
new file mode 100644
index 0000000..54184ca
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/ChangeAgentCommandTest.java
@@ -0,0 +1,44 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import com.cloud.host.Status.Event;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class ChangeAgentCommandTest {
+ ChangeAgentCommand cac = new ChangeAgentCommand(123456789L, Event.AgentConnected);
+
+ @Test
+ public void testGetAgentId() {
+ Long aid = cac.getAgentId();
+ assertTrue(123456789L == aid);
+ }
+
+ @Test
+ public void testGetEvent() {
+ Event e = cac.getEvent();
+ assertEquals(Event.AgentConnected, e);
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = cac.executeInSequence();
+ assertFalse(b);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/CheckHealthAnswerTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/CheckHealthAnswerTest.java b/api/test/src/com/cloud/agent/api/test/CheckHealthAnswerTest.java
new file mode 100644
index 0000000..283ba3c
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/CheckHealthAnswerTest.java
@@ -0,0 +1,45 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class CheckHealthAnswerTest {
+ CheckHealthCommand chc = new CheckHealthCommand();
+ CheckHealthAnswer cha = new CheckHealthAnswer(chc, true);
+
+ @Test
+ public void testGetResult() {
+ boolean r = cha.getResult();
+ assertTrue(r);
+ }
+
+ @Test
+ public void testGetDetails() {
+ String d = cha.getDetails();
+ boolean r = cha.getResult();
+ assertTrue(d.equals("resource is " + (r? "alive" : "not alive")));
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = cha.executeInSequence();
+ assertFalse(b);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/CheckHealthCommandTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/CheckHealthCommandTest.java b/api/test/src/com/cloud/agent/api/test/CheckHealthCommandTest.java
new file mode 100644
index 0000000..04e310d
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/CheckHealthCommandTest.java
@@ -0,0 +1,37 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class CheckHealthCommandTest {
+ CheckHealthCommand chc = new CheckHealthCommand();
+
+ @Test
+ public void testGetWait() {
+ int wait = chc.getWait();
+ assertTrue(wait == 50);
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = chc.executeInSequence();
+ assertFalse(b);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/CheckNetworkAnswerTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/CheckNetworkAnswerTest.java b/api/test/src/com/cloud/agent/api/test/CheckNetworkAnswerTest.java
new file mode 100644
index 0000000..53d4435
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/CheckNetworkAnswerTest.java
@@ -0,0 +1,51 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import com.cloud.host.Status.Event;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class CheckNetworkAnswerTest {
+ CheckNetworkCommand cnc = new CheckNetworkCommand();
+ CheckNetworkAnswer cna = new CheckNetworkAnswer(cnc, true, "details", true);
+
+ @Test
+ public void testGetResult() {
+ boolean b = cna.getResult();
+ assertTrue(b);
+ }
+
+ @Test
+ public void testGetDetails() {
+ String d = cna.getDetails();
+ assertTrue(d.equals("details"));
+ }
+
+ @Test
+ public void testNeedReconnect() {
+ boolean b = cna.needReconnect();
+ assertTrue(b);
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = cna.executeInSequence();
+ assertFalse(b);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/CheckNetworkCommandTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/CheckNetworkCommandTest.java b/api/test/src/com/cloud/agent/api/test/CheckNetworkCommandTest.java
new file mode 100644
index 0000000..c1bdd29
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/CheckNetworkCommandTest.java
@@ -0,0 +1,39 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import java.util.List;
+import com.cloud.agent.api.*;
+import com.cloud.network.PhysicalNetworkSetupInfo;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class CheckNetworkCommandTest {
+ CheckNetworkCommand cnc = new CheckNetworkCommand();
+
+ @Test
+ public void testGetPhysicalNetworkInfoList() {
+ List<PhysicalNetworkSetupInfo> networkInfoList = cnc.getPhysicalNetworkInfoList();
+ assertNull(networkInfoList);
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = cnc.executeInSequence();
+ assertTrue(b);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/CheckOnHostCommandTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/CheckOnHostCommandTest.java b/api/test/src/com/cloud/agent/api/test/CheckOnHostCommandTest.java
new file mode 100644
index 0000000..3b6e01c
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/CheckOnHostCommandTest.java
@@ -0,0 +1,366 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import java.util.List;
+import java.util.Date;
+import java.text.SimpleDateFormat;
+import java.text.ParseException;
+import com.cloud.agent.api.*;
+import com.cloud.agent.api.to.HostTO;
+import com.cloud.host.Host;
+import com.cloud.host.Status;
+import com.cloud.hypervisor.Hypervisor.HypervisorType;
+import com.cloud.resource.ResourceState;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class CheckOnHostCommandTest {
+ public Host host = new Host() {
+ public Status getState() {return Status.Up;};
+ public long getId() {return 101L;};
+ public String getName() {return "hostName";};
+ public Type getType() {return Host.Type.Storage;};
+ public Date getCreated() {
+ Date date = null;
+ try{
+ date = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").parse("01/01/1970 12:12:12");
+ }
+ catch (ParseException e) {
+ e.printStackTrace();
+ }
+ return date;
+ }
+ public Status getStatus() {return Status.Up;};
+ public String getPrivateIpAddress() {return "10.1.1.1";};
+ public String getStorageIpAddress() {return "10.1.1.2";};
+ public String getGuid() {return "bed9f83e-cac3-11e1-ac8a-0050568b007e";};
+ public Long getTotalMemory() {return 100000000000L;};
+ public Integer getCpus() {return 16;};
+ public Long getSpeed() {return 2000000000L;};
+ public Integer getProxyPort() {return 22;};
+ public Long getPodId() {return 16L;};
+ public long getDataCenterId() {return 17L;};
+ public String getParent() {return "parent";};
+ public String getStorageIpAddressDeux() {return "10.1.1.3";};
+ public HypervisorType getHypervisorType() {return HypervisorType.XenServer;};
+ public Date getDisconnectedOn() {
+ Date date = null;
+ try{
+ date = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").parse("01/01/2012 12:12:12");
+ }
+ catch (ParseException e) {
+ e.printStackTrace();
+ }
+ return date;
+ }
+ public String getVersion() {return "4.0.1";};
+ public long getTotalSize() {return 100000000000L;};
+ public String getCapabilities() {return "capabilities";};
+ public long getLastPinged() {return 1L;};
+ public Long getManagementServerId() {return 2L;};
+ public Date getRemoved() {
+ Date date = null;
+ try{
+ date = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").parse("02/01/2012 12:12:12");
+ }
+ catch (ParseException e) {
+ e.printStackTrace();
+ }
+ return date;
+ };
+ public Long getClusterId() {return 3L;};
+ public String getPublicIpAddress() {return "10.1.1.4";};
+ public String getPublicNetmask() {return "255.255.255.8";};
+ public String getPrivateNetmask() {return "255.255.255.16";};
+ public String getStorageNetmask() {return "255.255.255.24";};
+ public String getStorageMacAddress() {return "01:f4:17:38:0e:26";};
+ public String getPublicMacAddress() {return "02:f4:17:38:0e:26";};
+ public String getPrivateMacAddress() {return "03:f4:17:38:0e:26";};
+ public String getStorageNetmaskDeux() {return "255.255.255.25";};
+ public String getStorageMacAddressDeux() {return "01:f4:17:38:0e:27";};
+ public String getHypervisorVersion() {return "1.2.3.0";};
+ public boolean isInMaintenanceStates() {return false;};
+ public ResourceState getResourceState() {return ResourceState.Enabled;};
+ };
+
+ CheckOnHostCommand cohc = new CheckOnHostCommand(host);
+
+ @Test
+ public void testGetHost() {
+ HostTO h = cohc.getHost();
+ assertNotNull(h);
+ }
+
+ @Test
+ public void testGetState() {
+ Status s = host.getState();
+ assertTrue(s == Status.Up);
+ }
+
+ @Test
+ public void testGetId() {
+ Long id = host.getId();
+ assertTrue(101L == id);
+ }
+
+ @Test
+ public void testGetName() {
+ String name = host.getName();
+ assertTrue(name.equals("hostName"));
+ }
+
+ @Test
+ public void testGetType() {
+ Host.Type t = host.getType();
+ assertTrue(t == Host.Type.Storage);
+ }
+
+ @Test
+ public void testGetCreated() {
+ try{
+ Date date = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").parse("01/01/1970 12:12:12");
+ Date d = host.getCreated();
+ assertTrue(d.compareTo(date) == 0);
+ }
+ catch (ParseException e) {
+ e.printStackTrace();
+ }
+ }
+
+ @Test
+ public void testGetStatus() {
+ Status s = host.getStatus();
+ assertTrue(s == Status.Up);
+ }
+
+ @Test
+ public void testGetPrivateIpAddress() {
+ String addr = host.getPrivateIpAddress();
+ assertTrue(addr.equals("10.1.1.1"));
+ }
+
+ @Test
+ public void testGetStorageIpAddress() {
+ String addr = host.getStorageIpAddress();
+ assertTrue(addr.equals("10.1.1.2"));
+ }
+
+ @Test
+ public void testGetGuid() {
+ String guid = host.getGuid();
+ assertTrue(guid.equals("bed9f83e-cac3-11e1-ac8a-0050568b007e"));
+ }
+
+ @Test
+ public void testGetTotalMemory() {
+ Long m = host.getTotalMemory();
+ assertTrue(m == 100000000000L);
+ }
+
+ @Test
+ public void testGetCpus() {
+ int cpus = host.getCpus();
+ assertTrue(cpus == 16);
+ }
+
+ @Test
+ public void testGetSpeed() {
+ Long spped = host.getSpeed();
+ assertTrue(spped == 2000000000L);
+ }
+
+ @Test
+ public void testGetProxyPort() {
+ Integer port = host.getProxyPort();
+ assertTrue(port == 22);
+ }
+
+ @Test
+ public void testGetPodId() {
+ Long pID = host.getPodId();
+ assertTrue(pID == 16L);
+ }
+
+ @Test
+ public void testGetDataCenterId() {
+ long dcID = host.getDataCenterId();
+ assertTrue(dcID == 17L);
+ }
+
+ @Test
+ public void testGetParent() {
+ String p = host.getParent();
+ assertTrue(p.equals("parent"));
+ }
+
+ @Test
+ public void testGetStorageIpAddressDeux() {
+ String addr = host.getStorageIpAddressDeux();
+ assertTrue(addr.equals("10.1.1.3"));
+ }
+
+ @Test
+ public void testGetHypervisorType() {
+ HypervisorType type = host.getHypervisorType();
+ assertTrue(type == HypervisorType.XenServer);
+ }
+
+ @Test
+ public void testGetDisconnectedOn() {
+ try{
+ Date date = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").parse("01/01/2012 12:12:12");
+ Date d = host.getDisconnectedOn();
+ assertTrue(d.compareTo(date) == 0);
+ }
+ catch (ParseException e) {
+ e.printStackTrace();
+ }
+ }
+
+ @Test
+ public void testGetVersion() {
+ String v = host.getVersion();
+ assertTrue(v.equals("4.0.1"));
+ }
+
+ @Test
+ public void testGetTotalSize() {
+ long size = host.getTotalSize();
+ assertTrue(size == 100000000000L);
+ }
+
+ @Test
+ public void testGetCapabilities() {
+ String c = host.getCapabilities();
+ assertTrue(c.equals("capabilities"));
+ }
+
+ @Test
+ public void testGetLastPinged() {
+ long lp = host.getLastPinged();
+ assertTrue(lp == 1L);
+ }
+
+ @Test
+ public void testGetManagementServerId() {
+ Long msID = host.getManagementServerId();
+ assertTrue(msID == 2L);
+ }
+
+ @Test
+ public void testGetRemoved() {
+ try{
+ Date date = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss").parse("02/01/2012 12:12:12");
+ Date d = host.getRemoved();
+ assertTrue(d.compareTo(date) == 0);
+ }
+ catch (ParseException e) {
+ e.printStackTrace();
+ }
+ }
+
+ @Test
+ public void testGetClusterId() {
+ Long cID = host.getClusterId();
+ assertTrue(cID == 3L);
+ }
+
+ @Test
+ public void testGetPublicIpAddress() {
+ String pipAddr = host.getPublicIpAddress();
+ assertTrue(pipAddr.equals("10.1.1.4"));
+ }
+
+ @Test
+ public void testGetPublicNetmask() {
+ String pMask = host.getPublicNetmask();
+ assertTrue(pMask.equals("255.255.255.8"));
+ }
+
+ @Test
+ public void testGetPrivateNetmask() {
+ String pMask = host.getPrivateNetmask();
+ assertTrue(pMask.equals("255.255.255.16"));
+ }
+
+ @Test
+ public void testGetStorageNetmask() {
+ String sMask = host.getStorageNetmask();
+ assertTrue(sMask.equals("255.255.255.24"));
+ }
+
+ @Test
+ public void testGetStorageMacAddress() {
+ String sMac = host.getStorageMacAddress();
+ assertTrue(sMac.equals("01:f4:17:38:0e:26"));
+ }
+
+ @Test
+ public void testGetPublicMacAddress() {
+ String pMac = host.getPublicMacAddress();
+ assertTrue(pMac.equals("02:f4:17:38:0e:26"));
+ }
+
+ @Test
+ public void testGetPrivateMacAddress() {
+ String pMac = host.getPrivateMacAddress();
+ assertTrue(pMac.equals("03:f4:17:38:0e:26"));
+ }
+
+ @Test
+ public void testGetStorageNetmaskDeux() {
+ String sMask = host.getStorageNetmaskDeux();
+ assertTrue(sMask.equals("255.255.255.25"));
+ }
+
+ @Test
+ public void testGetStorageMacAddressDeux() {
+ String sMac = host.getStorageMacAddressDeux();
+ assertTrue(sMac.equals("01:f4:17:38:0e:27"));
+ }
+
+ @Test
+ public void testGetHypervisorVersion() {
+ String v = host.getHypervisorVersion();
+ assertTrue(v.equals("1.2.3.0"));
+ }
+
+ @Test
+ public void testIsInMaintenanceStates() {
+ boolean b = host.isInMaintenanceStates();
+ assertFalse(b);
+ }
+
+ @Test
+ public void testGetResourceState() {
+ ResourceState r = host.getResourceState();
+ assertTrue(r == ResourceState.Enabled);
+ }
+
+ @Test
+ public void testGetWait() {
+ int wait = cohc.getWait();
+ assertTrue(20 == wait);
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = cohc.executeInSequence();
+ assertFalse(b);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/agent/api/test/SnapshotCommandTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/agent/api/test/SnapshotCommandTest.java b/api/test/src/com/cloud/agent/api/test/SnapshotCommandTest.java
new file mode 100644
index 0000000..005e0a0
--- /dev/null
+++ b/api/test/src/com/cloud/agent/api/test/SnapshotCommandTest.java
@@ -0,0 +1,98 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.agent.api.test;
+
+import com.cloud.agent.api.*;
+import static org.junit.Assert.*;
+import org.junit.Test;
+
+public class SnapshotCommandTest {
+ SnapshotCommand ssc = new SnapshotCommand("primaryStoragePoolNameLabel",
+ "http://secondary.Storage.Url",
+ "420fa39c-4ef1-a83c-fd93-46dc1ff515ae",
+ "snapshotName",
+ 101L,
+ 102L,
+ 103L);
+
+ SnapshotCommand ssc1 = new SnapshotCommand();
+
+ @Test
+ public void testGetPrimaryStoragePoolNameLabel() {
+ String label = ssc.getPrimaryStoragePoolNameLabel();
+ assertTrue(label.equals("primaryStoragePoolNameLabel"));
+ }
+
+ @Test
+ public void testGetSecondaryStorageUrl() {
+ String url = ssc.getSecondaryStorageUrl();
+ assertTrue(url.equals("http://secondary.Storage.Url"));
+ }
+
+ @Test
+ public void testGetSnapshotUuid() {
+ String uuid = ssc.getSnapshotUuid();
+ assertTrue(uuid.equals("420fa39c-4ef1-a83c-fd93-46dc1ff515ae"));
+ }
+
+ @Test
+ public void testGetSnapshotName() {
+ String name = ssc.getSnapshotName();
+ assertTrue(name.equals("snapshotName"));
+ }
+
+ @Test
+ public void testGetVolumePath() {
+ ssc.setVolumePath("vPath");
+ String path = ssc.getVolumePath();
+ assertTrue(path.equals("vPath"));
+
+ ssc1.setVolumePath("vPath1");
+ path = ssc1.getVolumePath();
+ assertTrue(path.equals("vPath1"));
+ }
+
+ @Test
+ public void testExecuteInSequence() {
+ boolean b = ssc.executeInSequence();
+ assertFalse(b);
+
+ b = ssc1.executeInSequence();
+ assertFalse(b);
+ }
+
+ @Test
+ public void testGetDataCenterId() {
+ Long dcId = ssc.getDataCenterId();
+ Long expected = 101L;
+ assertEquals(expected, dcId);
+ }
+
+ @Test
+ public void testGetAccountId() {
+ Long aId = ssc.getAccountId();
+ Long expected = 102L;
+ assertEquals(expected, aId);
+ }
+
+ @Test
+ public void testGetVolumeId() {
+ Long vId = ssc.getVolumeId();
+ Long expected = 103L;
+ assertEquals(expected, vId);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/api/commands/test/ActivateProjectCmdTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/api/commands/test/ActivateProjectCmdTest.java b/api/test/src/com/cloud/api/commands/test/ActivateProjectCmdTest.java
new file mode 100644
index 0000000..1b08a6e
--- /dev/null
+++ b/api/test/src/com/cloud/api/commands/test/ActivateProjectCmdTest.java
@@ -0,0 +1,86 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.api.commands.test;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.mockito.Mockito;
+
+import com.cloud.api.ResponseGenerator;
+import com.cloud.api.response.ProjectResponse;
+import com.cloud.exception.InvalidParameterValueException;
+import com.cloud.projects.Project;
+import com.cloud.projects.ProjectService;
+import com.cloud.user.Account;
+import com.cloud.user.UserContext;
+
+public class ActivateProjectCmdTest extends TestCase {
+
+ private ActivateProjectCmd activateProjectCmd;
+
+ @Rule
+ public ExpectedException expectedException = ExpectedException.none();
+
+ @Before
+ public void setUp() {
+
+ activateProjectCmd = new ActivateProjectCmd(){
+
+ @Override
+ public Long getId() {
+ return 2L;
+ }
+
+ };
+ }
+
+
+ @Test
+ public void testGetEntityOwnerIdForNullProject() {
+ ProjectService projectService = Mockito.mock(ProjectService.class);
+ Mockito.when(projectService.getProject(Mockito.anyLong())).thenReturn(null);
+ activateProjectCmd._projectService = projectService;
+
+ try {
+ activateProjectCmd.getEntityOwnerId();
+ } catch(InvalidParameterValueException exception) {
+ Assert.assertEquals("Unable to find project by id 2", exception.getLocalizedMessage());
+ }
+ }
+
+ @Test
+ public void testGetEntityOwnerIdForProject() {
+ Project project = Mockito.mock(Project.class);
+ Mockito.when(project.getId()).thenReturn(2L);
+ ProjectService projectService = Mockito.mock(ProjectService.class);
+ Account account = Mockito.mock(Account.class);
+ Mockito.when(account.getId()).thenReturn(2L);
+ Mockito.when(projectService.getProject(Mockito.anyLong())).thenReturn(project);
+
+ Mockito.when(projectService.getProjectOwner(Mockito.anyLong())).thenReturn(account);
+ activateProjectCmd._projectService = projectService;
+
+ Assert.assertEquals(2L, activateProjectCmd.getEntityOwnerId());
+
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/api/commands/test/AddAccountToProjectCmdTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/api/commands/test/AddAccountToProjectCmdTest.java b/api/test/src/com/cloud/api/commands/test/AddAccountToProjectCmdTest.java
new file mode 100644
index 0000000..9b28327
--- /dev/null
+++ b/api/test/src/com/cloud/api/commands/test/AddAccountToProjectCmdTest.java
@@ -0,0 +1,175 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.api.commands.test;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.mockito.Mockito;
+
+import com.cloud.exception.InvalidParameterValueException;
+import com.cloud.projects.Project;
+import com.cloud.projects.ProjectService;
+import com.cloud.user.Account;
+
+public class AddAccountToProjectCmdTest extends TestCase {
+
+
+ private AddAccountToProjectCmd addAccountToProjectCmd;
+
+ @Rule
+ public ExpectedException expectedException = ExpectedException.none();
+
+ @Before
+ public void setUp() {
+ addAccountToProjectCmd = new AddAccountToProjectCmd(){
+
+ @Override
+ public Long getProjectId() {
+ return 2L;
+ }
+
+ @Override
+ public String getAccountName() {
+
+ // to run the test testGetEventDescriptionForAccount set the accountName
+// return "accountName";
+ // to run the test the testGetEventDescriptionForNullAccount return accountname as null
+ return null;
+ }
+
+ @Override
+ public String getEmail() {
+// return "customer@abc.com";
+ return null;
+ }
+
+ };
+ }
+
+
+ /****
+ * Condition not handled in the code
+ *
+ *****/
+
+ /*@Test
+ public void testGetEntityOwnerIdForNullProject() {
+
+ ProjectService projectService = Mockito.mock(ProjectService.class);
+ Mockito.when(projectService.getProject(Mockito.anyLong())).thenReturn(null);
+ addAccountToProjectCmd._projectService = projectService;
+
+ try {
+ addAccountToProjectCmd.getEntityOwnerId();
+ } catch(InvalidParameterValueException exception) {
+ Assert.assertEquals("Unable to find project by id 2", exception.getLocalizedMessage());
+ }
+
+ }*/
+
+
+ @Test
+ public void testGetEntityOwnerIdForProject() {
+
+ Project project = Mockito.mock(Project.class);
+ Mockito.when(project.getId()).thenReturn(2L);
+
+ ProjectService projectService = Mockito.mock(ProjectService.class);
+ Account account = Mockito.mock(Account.class);
+
+ Mockito.when(account.getId()).thenReturn(2L);
+ Mockito.when(projectService.getProject(Mockito.anyLong())).thenReturn(
+ project);
+
+ Mockito.when(projectService.getProjectOwner(Mockito.anyLong()))
+ .thenReturn(account);
+ addAccountToProjectCmd._projectService = projectService;
+
+ Assert.assertEquals(2L, addAccountToProjectCmd.getEntityOwnerId());
+
+ }
+
+ /**
+ * To run the test uncomment the return statement for getAccountName() in setup() and return null
+ *
+ * **/
+
+
+ /*@Test
+ public void testGetEventDescriptionForNullAccount() {
+
+ String result = addAccountToProjectCmd.getEventDescription();
+ String expected = "Sending invitation to email null to join project: 2";
+ Assert.assertEquals(expected, result);
+
+ }*/
+
+ /***
+ *
+ *
+ *
+ * ***/
+
+
+
+ /*@Test
+ public void testGetEventDescriptionForAccount() {
+
+ String result = addAccountToProjectCmd.getEventDescription();
+ String expected = "Adding account accountName to project: 2";
+ Assert.assertEquals(expected, result);
+
+ }*/
+
+ @Test
+ public void testExecuteForNullAccountNameEmail() {
+
+ try {
+ addAccountToProjectCmd.execute();
+ } catch(InvalidParameterValueException exception) {
+ Assert.assertEquals("Either accountName or email is required", exception.getLocalizedMessage());
+ }
+
+ }
+
+
+ /*@Test
+ public void testExecuteForAccountNameEmail() {
+
+ try {
+
+ ComponentLocator c = Mockito.mock(ComponentLocator.class);
+ UserContext userContext = Mockito.mock(UserContext.class);
+
+// Mockito.when(userContext.current()).thenReturn(userContext);
+
+
+ addAccountToProjectCmd.execute();
+ } catch(InvalidParameterValueException exception) {
+ Assert.assertEquals("Either accountName or email is required", exception.getLocalizedMessage());
+ }
+
+ }*/
+
+
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/api/commands/test/AddClusterCmdTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/api/commands/test/AddClusterCmdTest.java b/api/test/src/com/cloud/api/commands/test/AddClusterCmdTest.java
new file mode 100644
index 0000000..a5afbd5
--- /dev/null
+++ b/api/test/src/com/cloud/api/commands/test/AddClusterCmdTest.java
@@ -0,0 +1,123 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.api.commands.test;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.mockito.Mockito;
+
+import com.cloud.api.ResponseGenerator;
+import com.cloud.api.ServerApiException;
+import com.cloud.api.response.ClusterResponse;
+import com.cloud.exception.DiscoveryException;
+import com.cloud.exception.ResourceInUseException;
+import com.cloud.org.Cluster;
+import com.cloud.resource.ResourceService;
+
+import edu.emory.mathcs.backport.java.util.Arrays;
+
+public class AddClusterCmdTest extends TestCase {
+
+ private AddClusterCmd addClusterCmd;
+ private ResourceService resourceService;
+ private ResponseGenerator responseGenerator;
+
+
+ @Rule
+ public ExpectedException expectedException = ExpectedException.none();
+
+ @Before
+ public void setUp() {
+/* resourceService = Mockito.mock(ResourceService.class);
+ responseGenerator = Mockito.mock(ResponseGenerator.class);
+*/ addClusterCmd = new AddClusterCmd(){
+ };
+ }
+
+
+
+ @Test
+ public void testExecuteForNullResult() {
+
+ ResourceService resourceService = Mockito.mock(ResourceService.class);
+
+ try {
+ Mockito.when(resourceService.discoverCluster(addClusterCmd)).thenReturn(null);
+ } catch (ResourceInUseException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (IllegalArgumentException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (DiscoveryException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ addClusterCmd._resourceService = resourceService;
+
+ try {
+ addClusterCmd.execute();
+ } catch (ServerApiException exception) {
+ Assert.assertEquals("Failed to add cluster", exception.getDescription());
+ }
+
+ }
+
+
+ @Test
+ public void testExecuteForEmptyResult() {
+
+ ResourceService resourceService = Mockito.mock(ResourceService.class);
+ addClusterCmd._resourceService = resourceService;
+
+ try {
+ addClusterCmd.execute();
+ } catch (ServerApiException exception) {
+ Assert.assertEquals("Failed to add cluster", exception.getDescription());
+ }
+
+ }
+
+
+ @Test
+ public void testExecuteForResult() throws Exception {
+
+ resourceService = Mockito.mock(ResourceService.class);
+ responseGenerator = Mockito.mock(ResponseGenerator.class);
+
+ addClusterCmd._resourceService = resourceService;
+ addClusterCmd._responseGenerator = responseGenerator;
+
+ Cluster cluster = Mockito.mock(Cluster.class);
+ Cluster[] clusterArray = new Cluster[]{cluster};
+
+ Mockito.when(resourceService.discoverCluster(addClusterCmd)).thenReturn(Arrays.asList(clusterArray));
+
+ addClusterCmd.execute();
+
+
+ }
+
+}
+
+
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/api/commands/test/AddHostCmdTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/api/commands/test/AddHostCmdTest.java b/api/test/src/com/cloud/api/commands/test/AddHostCmdTest.java
new file mode 100644
index 0000000..cd8056c
--- /dev/null
+++ b/api/test/src/com/cloud/api/commands/test/AddHostCmdTest.java
@@ -0,0 +1,169 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.api.commands.test;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.LinkedList;
+import java.util.List;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.mockito.Mockito;
+
+import com.cloud.api.ResponseGenerator;
+import com.cloud.api.ServerApiException;
+import com.cloud.api.response.HostResponse;
+import com.cloud.api.response.ListResponse;
+import com.cloud.exception.DiscoveryException;
+import com.cloud.exception.InvalidParameterValueException;
+import com.cloud.host.Host;
+import com.cloud.host.Status;
+import com.cloud.hypervisor.Hypervisor.HypervisorType;
+import com.cloud.resource.ResourceService;
+import com.cloud.resource.ResourceState;
+
+import edu.emory.mathcs.backport.java.util.Arrays;
+
+public class AddHostCmdTest extends TestCase {
+
+ private AddHostCmd addHostCmd;
+ private ResourceService resourceService;
+ private ResponseGenerator responseGenerator;
+
+ @Rule
+ public ExpectedException expectedException = ExpectedException.none();
+
+ @Before
+ public void setUp() {
+ resourceService = Mockito.mock(ResourceService.class);
+ responseGenerator = Mockito.mock(ResponseGenerator.class);
+ addHostCmd = new AddHostCmd(){
+ };
+ }
+
+ @Test
+ public void testExecuteForEmptyResult() {
+ addHostCmd._resourceService = resourceService;
+
+ try {
+ addHostCmd.execute();
+ } catch(ServerApiException exception) {
+ Assert.assertEquals("Failed to add host", exception.getDescription());
+ }
+
+ }
+
+
+ @Test
+ public void testExecuteForNullResult() {
+
+ ResourceService resourceService = Mockito.mock(ResourceService.class);
+ addHostCmd._resourceService = resourceService;
+
+ try {
+ Mockito.when(resourceService.discoverHosts(addHostCmd)).thenReturn(null);
+ } catch (InvalidParameterValueException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (IllegalArgumentException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (DiscoveryException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ try {
+ addHostCmd.execute();
+ } catch(ServerApiException exception) {
+ Assert.assertEquals("Failed to add host", exception.getDescription());
+ }
+
+ }
+
+
+/* @Test
+ public void testExecuteForResult() throws Exception {
+
+ addHostCmd._resourceService = resourceService;
+ addHostCmd._responseGenerator = responseGenerator;
+ MockHost mockInstance = new MockHost();
+ MockHost[] mockArray = new MockHost[]{mockInstance};
+ HostResponse responseHost = new HostResponse();
+ responseHost.setName("Test");
+ Mockito.when(resourceService.discoverHosts(addHostCmd)).thenReturn(Arrays.asList(mockArray));
+ Mockito.when(responseGenerator.createHostResponse(mockInstance)).thenReturn(responseHost);
+ addHostCmd.execute();
+ Mockito.verify(responseGenerator).createHostResponse(mockInstance);
+ ListResponse<HostResponse> actualResponse = ((ListResponse<HostResponse>)addHostCmd.getResponseObject());
+ Assert.assertEquals(responseHost, actualResponse.getResponses().get(0));
+ Assert.assertEquals("addhostresponse", actualResponse.getResponseName());
+ }
+*/
+ @Test
+ public void testExecuteForResult() throws Exception {
+
+ addHostCmd._resourceService = resourceService;
+ addHostCmd._responseGenerator = responseGenerator;
+ Host host = Mockito.mock(Host.class);
+ Host[] mockArray = new Host[]{host};
+
+ HostResponse responseHost = new HostResponse();
+ responseHost.setName("Test");
+ Mockito.when(resourceService.discoverHosts(addHostCmd)).thenReturn(Arrays.asList(mockArray));
+ Mockito.when(responseGenerator.createHostResponse(host)).thenReturn(responseHost);
+ addHostCmd.execute();
+ Mockito.verify(responseGenerator).createHostResponse(host);
+ ListResponse<HostResponse> actualResponse = ((ListResponse<HostResponse>)addHostCmd.getResponseObject());
+ Assert.assertEquals(responseHost, actualResponse.getResponses().get(0));
+ Assert.assertEquals("addhostresponse", actualResponse.getResponseName());
+
+ }
+
+
+ @Test
+ public void testExecuteForDiscoveryException() {
+
+ addHostCmd._resourceService = resourceService;
+
+ try {
+ Mockito.when(resourceService.discoverHosts(addHostCmd)).thenThrow(DiscoveryException.class);
+ } catch (InvalidParameterValueException e) {
+ e.printStackTrace();
+ } catch (IllegalArgumentException e) {
+ e.printStackTrace();
+ } catch (DiscoveryException e) {
+ e.printStackTrace();
+ }
+
+ try {
+ addHostCmd.execute();
+ } catch(ServerApiException exception) {
+ Assert.assertNull(exception.getDescription());
+ }
+
+ }
+
+
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/api/commands/test/AddNetworkServiceProviderCmdTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/api/commands/test/AddNetworkServiceProviderCmdTest.java b/api/test/src/com/cloud/api/commands/test/AddNetworkServiceProviderCmdTest.java
new file mode 100644
index 0000000..ab8e848
--- /dev/null
+++ b/api/test/src/com/cloud/api/commands/test/AddNetworkServiceProviderCmdTest.java
@@ -0,0 +1,118 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.api.commands.test;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.mockito.Mockito;
+
+import com.cloud.api.ServerApiException;
+import com.cloud.exception.ResourceAllocationException;
+import com.cloud.network.NetworkService;
+import com.cloud.network.PhysicalNetworkServiceProvider;
+
+public class AddNetworkServiceProviderCmdTest extends TestCase {
+
+ private AddNetworkServiceProviderCmd addNetworkServiceProviderCmd;
+
+ @Rule
+ public ExpectedException expectedException = ExpectedException.none();
+
+ @Before
+ public void setUp() {
+ addNetworkServiceProviderCmd = new AddNetworkServiceProviderCmd() {
+
+ @Override
+ public Long getPhysicalNetworkId() {
+ return 2L;
+ }
+
+ @Override
+ public String getProviderName() {
+ return "ProviderName";
+ }
+
+ @Override
+ public Long getDestinationPhysicalNetworkId() {
+ return 2L;
+ }
+
+ @Override
+ public List<String> getEnabledServices() {
+ List<String> lOfEnabledServices = new ArrayList<String>();
+ lOfEnabledServices.add("Enabled Services");
+ return lOfEnabledServices;
+ }
+
+ public Long getEntityId() {
+ return 2L;
+ }
+
+ };
+
+ }
+
+ @Test
+ public void testCreateProviderToPhysicalNetworkSuccess() {
+
+ NetworkService networkService = Mockito.mock(NetworkService.class);
+ addNetworkServiceProviderCmd._networkService = networkService;
+
+ PhysicalNetworkServiceProvider physicalNetworkServiceProvider = Mockito.mock(PhysicalNetworkServiceProvider.class);
+ Mockito.when(networkService.addProviderToPhysicalNetwork(Mockito.anyLong(),
+ Mockito.anyString(), Mockito.anyLong(),
+ Mockito.anyList())).thenReturn(
+ physicalNetworkServiceProvider);
+
+ try {
+ addNetworkServiceProviderCmd.create();
+ } catch (ResourceAllocationException e) {
+ e.printStackTrace();
+ }
+
+ }
+
+
+ @Test
+ public void testCreateProviderToPhysicalNetworkFailure() throws ResourceAllocationException {
+
+ NetworkService networkService = Mockito.mock(NetworkService.class);
+ addNetworkServiceProviderCmd._networkService = networkService;
+
+ Mockito.when(networkService.addProviderToPhysicalNetwork(Mockito.anyLong(),
+ Mockito.anyString(), Mockito.anyLong(),
+ Mockito.anyList())).thenReturn(null);
+
+ try {
+ addNetworkServiceProviderCmd.create();
+ } catch (ServerApiException exception) {
+ Assert.assertEquals("Failed to add service provider entity to physical network", exception.getDescription());
+ }
+
+
+ }
+
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e953b774/api/test/src/com/cloud/api/commands/test/AddSecondaryStorageCmdTest.java
----------------------------------------------------------------------
diff --git a/api/test/src/com/cloud/api/commands/test/AddSecondaryStorageCmdTest.java b/api/test/src/com/cloud/api/commands/test/AddSecondaryStorageCmdTest.java
new file mode 100644
index 0000000..59f8367
--- /dev/null
+++ b/api/test/src/com/cloud/api/commands/test/AddSecondaryStorageCmdTest.java
@@ -0,0 +1,120 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements. See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership. The ASF licenses this file
+// to you under the Apache License, Version 2.0 (the
+// "License"); you may not use this file except in compliance
+// with the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing,
+// software distributed under the License is distributed on an
+// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+// KIND, either express or implied. See the License for the
+// specific language governing permissions and limitations
+// under the License.
+package src.com.cloud.api.commands.test;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.mockito.Mockito;
+
+import com.cloud.api.ResponseGenerator;
+import com.cloud.api.ServerApiException;
+import com.cloud.api.response.HostResponse;
+import com.cloud.api.response.ListResponse;
+import com.cloud.exception.DiscoveryException;
+import com.cloud.exception.InvalidParameterValueException;
+import com.cloud.host.Host;
+import com.cloud.resource.ResourceService;
+
+import edu.emory.mathcs.backport.java.util.Arrays;
+
+public class AddSecondaryStorageCmdTest extends TestCase {
+
+ private AddSecondaryStorageCmd addSecondaryStorageCmd;
+
+ @Rule
+ public ExpectedException expectedException = ExpectedException.none();
+
+ @Before
+ public void setUp() {
+ addSecondaryStorageCmd = new AddSecondaryStorageCmd() {
+ };
+
+ }
+
+
+ @Test
+ public void testExecuteForResult() throws Exception {
+
+ ResourceService resourceService = Mockito.mock(ResourceService.class);
+ addSecondaryStorageCmd._resourceService = resourceService;
+
+ Host host = Mockito.mock(Host.class);
+ Host[] mockHosts = new Host[] {host};
+
+ Mockito.when(resourceService.discoverHosts(addSecondaryStorageCmd)).thenReturn(Arrays.asList(mockHosts));
+
+ ResponseGenerator responseGenerator = Mockito.mock(ResponseGenerator.class);
+ addSecondaryStorageCmd._responseGenerator = responseGenerator;
+
+ HostResponse responseHost = new HostResponse();
+ responseHost.setName("Test");
+
+ Mockito.when(responseGenerator.createHostResponse(host)).thenReturn(responseHost);
+
+ addSecondaryStorageCmd.execute();
+
+ Mockito.verify(responseGenerator).createHostResponse(host);
+
+ HostResponse actualResponse = (HostResponse)addSecondaryStorageCmd.getResponseObject();
+
+ Assert.assertEquals(responseHost, actualResponse);
+ Assert.assertEquals("addsecondarystorageresponse", actualResponse.getResponseName());
+
+
+ }
+
+ @Test
+ public void testExecuteForEmptyResult() throws Exception {
+
+ ResourceService resourceService = Mockito.mock(ResourceService.class);
+ addSecondaryStorageCmd._resourceService = resourceService;
+
+ Host[] mockHosts = new Host[] {};
+
+ Mockito.when(resourceService.discoverHosts(addSecondaryStorageCmd)).thenReturn(Arrays.asList(mockHosts));
+
+ try {
+ addSecondaryStorageCmd.execute();
+ } catch(ServerApiException exception) {
+ Assert.assertEquals("Failed to add secondary storage", exception.getDescription());
+ }
+
+ }
+
+ @Test
+ public void testExecuteForNullResult() throws Exception {
+
+ ResourceService resourceService = Mockito.mock(ResourceService.class);
+ addSecondaryStorageCmd._resourceService = resourceService;
+
+ Mockito.when(resourceService.discoverHosts(addSecondaryStorageCmd)).thenReturn(null);
+
+ try {
+ addSecondaryStorageCmd.execute();
+ } catch(ServerApiException exception) {
+ Assert.assertEquals("Failed to add secondary storage", exception.getDescription());
+ }
+
+
+ }
+
+}