-
Notifications
You must be signed in to change notification settings - Fork 255
Expand file tree
/
Copy pathEmbeddedAzuriteBoostrapConfigurationTest.java
More file actions
65 lines (53 loc) · 2.83 KB
/
Copy pathEmbeddedAzuriteBoostrapConfigurationTest.java
File metadata and controls
65 lines (53 loc) · 2.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
package com.playtika.testcontainer.azurite;
import com.azure.storage.blob.BlobContainerClient;
import com.azure.storage.blob.BlobServiceClient;
import com.azure.storage.blob.BlobServiceClientBuilder;
import com.azure.storage.queue.QueueClient;
import com.azure.storage.queue.QueueServiceClient;
import com.azure.storage.queue.QueueServiceClientBuilder;
import com.azure.storage.queue.models.QueueMessageItem;
import com.azure.storage.queue.models.SendMessageResult;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.UUID;
import static org.assertj.core.api.Assertions.assertThat;
@SpringBootTest(classes = EmbeddedAzuriteBoostrapConfigurationTest.AzuriteTestConfiguration.class)
class EmbeddedAzuriteBoostrapConfigurationTest {
@Autowired
BlobServiceClientBuilder blobServiceClientBuilder;
@Autowired
QueueServiceClientBuilder queueServiceClientBuilder;
@Test
void accountName() {
BlobServiceClient blobServiceClient = blobServiceClientBuilder.buildClient();
assertThat(blobServiceClient.getAccountName()).isEqualTo(AzuriteProperties.ACCOUNT_NAME);
}
@Test
@DisplayName("do some basic operations with blob to show that azurite is running and working correctly")
void createAndDeleteContainerBlob() {
BlobServiceClient blobServiceClient = blobServiceClientBuilder.buildClient();
long containersBefore = blobServiceClient.listBlobContainers().stream().count();
BlobContainerClient container = blobServiceClient.createBlobContainer(UUID.randomUUID().toString());
assertThat(container.listBlobs().stream()).isEmpty();
assertThat(blobServiceClient.listBlobContainers().stream().count()).isEqualTo(containersBefore + 1);
container.delete();
assertThat(blobServiceClient.listBlobContainers().stream().count()).isEqualTo(containersBefore);
}
@Test
@DisplayName("do some basic operations with queue to show that azurite is running and working correctly")
void createAndDeleteContainerQueue() {
QueueServiceClient queueServiceClient = queueServiceClientBuilder.buildClient();
QueueClient queueClient = queueServiceClient.createQueue(UUID.randomUUID().toString());
SendMessageResult sendMessageResult = queueClient.sendMessage("test");
QueueMessageItem queueMessageItem = queueClient.receiveMessage();
assertThat(queueMessageItem.getBody().toString()).isEqualTo("test");
assertThat(queueMessageItem.getMessageId()).isEqualTo(sendMessageResult.getMessageId());
queueClient.delete();
}
@EnableAutoConfiguration
public static class AzuriteTestConfiguration {
}
}