|
6 | 6 | import java.util.List; |
7 | 7 | import java.util.Map; |
8 | 8 | import java.util.Properties; |
| 9 | +import java.util.UUID; |
9 | 10 |
|
10 | 11 | import javax.ws.rs.core.UriBuilder; |
11 | 12 |
|
|
16 | 17 | import org.fogbowcloud.manager.occi.model.Category; |
17 | 18 | import org.fogbowcloud.manager.occi.model.OCCIException; |
18 | 19 | import org.fogbowcloud.manager.occi.model.Token; |
| 20 | +import org.fogbowcloud.manager.occi.request.RequestAttribute; |
19 | 21 | import org.junit.Assert; |
20 | 22 | import org.junit.Test; |
21 | 23 | import org.mockito.Mockito; |
@@ -133,6 +135,28 @@ public void testRequestInstances() throws Exception { |
133 | 135 | VM_DEFAULT_PASSWORD, VM_DEFAULT_ID_1, FLAVOR_NAME_EXTRA_SMALL, |
134 | 136 | null, computeManagementClient); |
135 | 137 | } |
| 138 | + |
| 139 | + @Test |
| 140 | + public void testRequestInstanceWithUserData() throws Exception { |
| 141 | + AzureComputePlugin plugin = createAzureComputePlugin(); |
| 142 | + ComputeManagementClient computeManagementClient = createComputeManagementClient(plugin); |
| 143 | + recordFlavors(plugin); |
| 144 | + Mockito.doReturn(VM_DEFAULT_PASSWORD).when(plugin).getPassword(); |
| 145 | + List<AzureTestInstanceConfigurationSet> instances = createDefaultInstances(); |
| 146 | + recordInstances(computeManagementClient, instances); |
| 147 | + |
| 148 | + Token token = createToken(null); |
| 149 | + String userData = UUID.randomUUID().toString(); |
| 150 | + HashMap<String, String> occiAtt = new HashMap<String, String>(); |
| 151 | + occiAtt.put(RequestAttribute.USER_DATA_ATT.getValue(), userData); |
| 152 | + String imageName = plugin.requestInstance(token, |
| 153 | + new LinkedList<Category>(), occiAtt, |
| 154 | + VM_DEFAULT_ID_1); |
| 155 | + Assert.assertTrue(imageName.contains(VM_DEFAULT_PREFIX)); |
| 156 | + Mockito.verify(plugin).createRoleList(imageName, imageName, |
| 157 | + VM_DEFAULT_PASSWORD, VM_DEFAULT_ID_1, FLAVOR_NAME_EXTRA_SMALL, |
| 158 | + userData, computeManagementClient); |
| 159 | + } |
136 | 160 |
|
137 | 161 | @Test(expected = OCCIException.class) |
138 | 162 | public void testRequestInstanceMaxInstancesExceeded() throws Exception { |
|
0 commit comments