@Test
@Category({ DevFabricTests.class, DevStoreTests.class, SlowTests.class })
public void testQueueGetSetPermissionTest() throws StorageException, InterruptedException {
QueuePermissions expectedPermissions;
QueuePermissions testPermissions;
expectedPermissions = new QueuePermissions();
testPermissions = this.queue.downloadPermissions();
assertQueuePermissionsEqual(expectedPermissions, testPermissions);
this.queue.uploadPermissions(expectedPermissions);
Thread.sleep(30000);
testPermissions = this.queue.downloadPermissions();
assertQueuePermissionsEqual(expectedPermissions, testPermissions);
SharedAccessQueuePolicy policy1 = new SharedAccessQueuePolicy();
Calendar now = GregorianCalendar.getInstance();
policy1.setSharedAccessStartTime(now.getTime());
now.add(Calendar.MINUTE, 10);
policy1.setSharedAccessExpiryTime(now.getTime());
policy1.setPermissions(EnumSet.of(SharedAccessQueuePermissions.READ,
SharedAccessQueuePermissions.PROCESSMESSAGES, SharedAccessQueuePermissions.ADD,
SharedAccessQueuePermissions.UPDATE));
expectedPermissions.getSharedAccessPolicies().put(UUID.randomUUID().toString(), policy1);
this.queue.uploadPermissions(expectedPermissions);
Thread.sleep(30000);
testPermissions = this.queue.downloadPermissions();
assertQueuePermissionsEqual(expectedPermissions, testPermissions);
}