|
|
|
@ -19,6 +19,7 @@ import com.datastax.oss.driver.api.core.uuid.Uuids; |
|
|
|
import com.google.protobuf.AbstractMessage; |
|
|
|
import org.junit.Assert; |
|
|
|
import org.junit.Test; |
|
|
|
import org.thingsboard.common.util.JacksonUtil; |
|
|
|
import org.thingsboard.server.common.data.ResourceType; |
|
|
|
import org.thingsboard.server.common.data.StringUtils; |
|
|
|
import org.thingsboard.server.common.data.TbResource; |
|
|
|
@ -58,12 +59,14 @@ public class ResourceEdgeTest extends AbstractEdgeTest { |
|
|
|
Assert.assertEquals(UpdateMsgType.ENTITY_CREATED_RPC_MESSAGE, resourceUpdateMsg.getMsgType()); |
|
|
|
Assert.assertEquals(savedResource.getUuidId().getMostSignificantBits(), resourceUpdateMsg.getIdMSB()); |
|
|
|
Assert.assertEquals(savedResource.getUuidId().getLeastSignificantBits(), resourceUpdateMsg.getIdLSB()); |
|
|
|
Assert.assertEquals("Edge Test Resource", resourceUpdateMsg.getTitle()); |
|
|
|
Assert.assertEquals(ResourceType.JKS.name(), resourceUpdateMsg.getResourceType()); |
|
|
|
Assert.assertEquals(FILE_NAME, resourceUpdateMsg.getResourceKey()); |
|
|
|
Assert.assertEquals(FILE_NAME, resourceUpdateMsg.getFileName()); |
|
|
|
Assert.assertEquals(TEST_DATA, resourceUpdateMsg.getData()); |
|
|
|
Assert.assertTrue(StringUtils.isNotBlank(resourceUpdateMsg.getEtag())); |
|
|
|
TbResource tbResource = JacksonUtil.fromStringIgnoreUnknownProperties(resourceUpdateMsg.getEntity(), TbResource.class); |
|
|
|
Assert.assertNotNull(tbResource); |
|
|
|
Assert.assertEquals("Edge Test Resource", tbResource.getTitle()); |
|
|
|
Assert.assertEquals(ResourceType.JKS, tbResource.getResourceType()); |
|
|
|
Assert.assertEquals(FILE_NAME, tbResource.getResourceKey()); |
|
|
|
Assert.assertEquals(FILE_NAME, tbResource.getFileName()); |
|
|
|
Assert.assertEquals(TEST_DATA, tbResource.getData()); |
|
|
|
Assert.assertTrue(StringUtils.isNotBlank(tbResource.getEtag())); |
|
|
|
|
|
|
|
// update resource
|
|
|
|
edgeImitator.expectMessageAmount(1); |
|
|
|
@ -73,8 +76,10 @@ public class ResourceEdgeTest extends AbstractEdgeTest { |
|
|
|
latestMessage = edgeImitator.getLatestMessage(); |
|
|
|
Assert.assertTrue(latestMessage instanceof ResourceUpdateMsg); |
|
|
|
resourceUpdateMsg = (ResourceUpdateMsg) latestMessage; |
|
|
|
tbResource = JacksonUtil.fromStringIgnoreUnknownProperties(resourceUpdateMsg.getEntity(), TbResource.class); |
|
|
|
Assert.assertNotNull(tbResource); |
|
|
|
Assert.assertEquals(UpdateMsgType.ENTITY_UPDATED_RPC_MESSAGE, resourceUpdateMsg.getMsgType()); |
|
|
|
Assert.assertEquals("Updated Edge Test Resource", resourceUpdateMsg.getTitle()); |
|
|
|
Assert.assertEquals("Updated Edge Test Resource", tbResource.getTitle()); |
|
|
|
|
|
|
|
// delete resource
|
|
|
|
edgeImitator.expectMessageAmount(1); |
|
|
|
@ -91,18 +96,14 @@ public class ResourceEdgeTest extends AbstractEdgeTest { |
|
|
|
|
|
|
|
@Test |
|
|
|
public void testSendResourceToCloud() throws Exception { |
|
|
|
TbResource tbResource = createTbResource(); |
|
|
|
UUID uuid = Uuids.timeBased(); |
|
|
|
|
|
|
|
UplinkMsg.Builder uplinkMsgBuilder = UplinkMsg.newBuilder(); |
|
|
|
ResourceUpdateMsg.Builder resourceUpdateMsgBuilder = ResourceUpdateMsg.newBuilder(); |
|
|
|
resourceUpdateMsgBuilder.setIdMSB(uuid.getMostSignificantBits()); |
|
|
|
resourceUpdateMsgBuilder.setIdLSB(uuid.getLeastSignificantBits()); |
|
|
|
resourceUpdateMsgBuilder.setTitle("Edge Test Resource"); |
|
|
|
resourceUpdateMsgBuilder.setResourceType(ResourceType.JKS.name()); |
|
|
|
resourceUpdateMsgBuilder.setResourceKey(FILE_NAME); |
|
|
|
resourceUpdateMsgBuilder.setFileName(FILE_NAME); |
|
|
|
resourceUpdateMsgBuilder.setData(TEST_DATA); |
|
|
|
resourceUpdateMsgBuilder.setIsSystem(false); |
|
|
|
resourceUpdateMsgBuilder.setEntity(JacksonUtil.toString(tbResource)); |
|
|
|
resourceUpdateMsgBuilder.setMsgType(UpdateMsgType.ENTITY_CREATED_RPC_MESSAGE); |
|
|
|
testAutoGeneratedCodeByProtobuf(resourceUpdateMsgBuilder); |
|
|
|
uplinkMsgBuilder.addResourceUpdateMsg(resourceUpdateMsgBuilder.build()); |
|
|
|
@ -117,18 +118,14 @@ public class ResourceEdgeTest extends AbstractEdgeTest { |
|
|
|
UplinkResponseMsg latestResponseMsg = edgeImitator.getLatestResponseMsg(); |
|
|
|
Assert.assertTrue(latestResponseMsg.getSuccess()); |
|
|
|
|
|
|
|
TbResource tbResource = doGet("/api/resource/" + uuid, TbResource.class); |
|
|
|
Assert.assertNotNull(tbResource); |
|
|
|
Assert.assertEquals("Edge Test Resource", tbResource.getName()); |
|
|
|
TbResource tb = doGet("/api/resource/" + uuid, TbResource.class); |
|
|
|
Assert.assertNotNull(tb); |
|
|
|
Assert.assertEquals("Edge Test Resource", tb.getName()); |
|
|
|
} |
|
|
|
|
|
|
|
@Test |
|
|
|
public void testResourceToCloudWithNameThatAlreadyExistsOnCloud() throws Exception { |
|
|
|
TbResource resource = new TbResource(); |
|
|
|
resource.setResourceType(ResourceType.JKS); |
|
|
|
resource.setTitle("Edge Test Resource"); |
|
|
|
resource.setFileName(FILE_NAME); |
|
|
|
resource.setData(TEST_DATA); |
|
|
|
TbResource resource = createTbResource(); |
|
|
|
|
|
|
|
edgeImitator.expectMessageAmount(1); |
|
|
|
TbResource savedResource = doPost("/api/resource", resource, TbResource.class); |
|
|
|
@ -140,12 +137,7 @@ public class ResourceEdgeTest extends AbstractEdgeTest { |
|
|
|
ResourceUpdateMsg.Builder resourceUpdateMsgBuilder = ResourceUpdateMsg.newBuilder(); |
|
|
|
resourceUpdateMsgBuilder.setIdMSB(uuid.getMostSignificantBits()); |
|
|
|
resourceUpdateMsgBuilder.setIdLSB(uuid.getLeastSignificantBits()); |
|
|
|
resourceUpdateMsgBuilder.setTitle("Edge Test Resource"); |
|
|
|
resourceUpdateMsgBuilder.setResourceType(ResourceType.JKS.name()); |
|
|
|
resourceUpdateMsgBuilder.setResourceKey(FILE_NAME); |
|
|
|
resourceUpdateMsgBuilder.setFileName(FILE_NAME); |
|
|
|
resourceUpdateMsgBuilder.setData(TEST_DATA); |
|
|
|
resourceUpdateMsgBuilder.setIsSystem(false); |
|
|
|
resourceUpdateMsgBuilder.setEntity(JacksonUtil.toString(resource)); |
|
|
|
resourceUpdateMsgBuilder.setMsgType(UpdateMsgType.ENTITY_CREATED_RPC_MESSAGE); |
|
|
|
testAutoGeneratedCodeByProtobuf(resourceUpdateMsgBuilder); |
|
|
|
uplinkMsgBuilder.addResourceUpdateMsg(resourceUpdateMsgBuilder.build()); |
|
|
|
@ -171,4 +163,15 @@ public class ResourceEdgeTest extends AbstractEdgeTest { |
|
|
|
Assert.assertNotNull(tbResource); |
|
|
|
Assert.assertNotEquals(FILE_NAME, tbResource.getName()); |
|
|
|
} |
|
|
|
|
|
|
|
private TbResource createTbResource() { |
|
|
|
TbResource tbResource = new TbResource(); |
|
|
|
tbResource.setTenantId(tenantId); |
|
|
|
tbResource.setTitle("Edge Test Resource"); |
|
|
|
tbResource.setResourceType(ResourceType.JKS); |
|
|
|
tbResource.setResourceKey(FILE_NAME); |
|
|
|
tbResource.setFileName(FILE_NAME); |
|
|
|
tbResource.setData(TEST_DATA); |
|
|
|
return tbResource; |
|
|
|
} |
|
|
|
} |
|
|
|
|