blob: 59e0e1dc2c820e9afd91aa3201e64c4c7e942a43 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2014, 2016 Orange.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*******************************************************************************/
package org.eclipse.om2m.das.testsuite.crud;
import java.util.UUID;
import org.eclipse.om2m.commons.constants.CSEType;
import org.eclipse.om2m.commons.constants.Constants;
import org.eclipse.om2m.commons.constants.MimeMediaType;
import org.eclipse.om2m.commons.constants.Operation;
import org.eclipse.om2m.commons.constants.ResourceType;
import org.eclipse.om2m.commons.constants.ResponseStatusCode;
import org.eclipse.om2m.commons.resource.RemoteCSE;
import org.eclipse.om2m.commons.resource.RequestPrimitive;
import org.eclipse.om2m.commons.resource.ResponsePrimitive;
import org.eclipse.om2m.core.service.CseService;
public class CreateDAS_RemoteCSE_Test extends CreateDAS_CseBase_Test {
public CreateDAS_RemoteCSE_Test(CseService pCseService) {
super("Create DAS - RemoteCSE", pCseService);
}
@Override
public void performTest() {
RemoteCSE remoteCse = createRemoteCSE();
if (remoteCse == null) {
setState(State.KO);
setMessage("unable to create RemoteCse");
return;
}
// check non hierarchical uri
if (!createAndCheck(remoteCse.getResourceID())) {
return;
}
// check hierarchical uri
if (!createAndCheck("/" + Constants.CSE_ID + "/" + Constants.CSE_NAME + "/" + remoteCse.getName())) {
return;
}
setState(State.OK);
}
/**
* Create a fake AE.
* @return
*/
private RemoteCSE createRemoteCSE() {
RemoteCSE remoteCse = new RemoteCSE();
remoteCse.setCseType(CSEType.IN_CSE);
remoteCse.setCSEID("cseId" + UUID.randomUUID());
remoteCse.setCSEBase("/base" + remoteCse.getCSEID());
remoteCse.setRequestReachability(Boolean.FALSE);
remoteCse.setName(remoteCse.getCSEID());
RequestPrimitive request = new RequestPrimitive();
request.setOperation(Operation.CREATE);
request.setRequestContentType(MimeMediaType.OBJ);
request.setReturnContentType(MimeMediaType.OBJ);
request.setResourceType(ResourceType.REMOTE_CSE);
request.setTo("/" + Constants.CSE_ID + "/" + Constants.CSE_NAME);
request.setFrom(Constants.ADMIN_REQUESTING_ENTITY);
request.setContent(remoteCse);
// execute
ResponsePrimitive response = getCseService().doRequest(request);
if ((response != null) && (ResponseStatusCode.CREATED.equals(response.getResponseStatusCode()))) {
return (RemoteCSE) response.getContent();
}
return null;
}
}