Tweak test script no issue #
[arvados.git] / src / test / java / org / arvados / client / api / client / CollectionsApiClientTest.java
1 /*
2  * Copyright (C) The Arvados Authors. All rights reserved.
3  *
4  * SPDX-License-Identifier: AGPL-3.0 OR Apache-2.0
5  *
6  */
7
8 package org.arvados.client.api.client;
9
10 import okhttp3.mockwebserver.RecordedRequest;
11 import org.arvados.client.api.model.Collection;
12 import org.arvados.client.api.model.CollectionList;
13 import org.arvados.client.test.utils.RequestMethod;
14 import org.arvados.client.test.utils.ArvadosClientMockedWebServerTest;
15 import org.junit.Test;
16
17 import static org.arvados.client.test.utils.ApiClientTestUtils.*;
18 import static org.assertj.core.api.Assertions.assertThat;
19
20 public class CollectionsApiClientTest extends ArvadosClientMockedWebServerTest {
21
22     private static final String RESOURCE = "collections";
23
24     private CollectionsApiClient client = new CollectionsApiClient(CONFIG);
25
26     @Test
27     public void listCollections() throws Exception {
28
29         // given
30         server.enqueue(getResponse("collections-list"));
31
32         // when
33         CollectionList actual = client.list();
34
35         // then
36         RecordedRequest request = server.takeRequest();
37         assertAuthorizationHeader(request);
38         assertRequestPath(request, RESOURCE);
39         assertRequestMethod(request, RequestMethod.GET);
40         assertThat(actual.getItemsAvailable()).isEqualTo(41);
41     }
42
43     @Test
44     public void getCollection() throws Exception {
45
46         // given
47         server.enqueue(getResponse("collections-get"));
48
49         String uuid = "112ci-4zz18-p51w7z3fpopo6sm";
50
51         // when
52         Collection actual = client.get(uuid);
53
54         // then
55         RecordedRequest request = server.takeRequest();
56         assertAuthorizationHeader(request);
57         assertRequestPath(request, RESOURCE + "/" + uuid);
58         assertRequestMethod(request, RequestMethod.GET);
59         assertThat(actual.getUuid()).isEqualTo(uuid);
60         assertThat(actual.getPortableDataHash()).isEqualTo("6c4106229b08fe25f48b3a7a8289dd46+143");
61     }
62
63     @Test
64     public void createCollection() throws Exception {
65
66         // given
67         server.enqueue(getResponse("collections-create-simple"));
68
69         String name = "Super Collection";
70         
71         Collection collection = new Collection();
72         collection.setName(name);
73
74         // when
75         Collection actual = client.create(collection);
76
77         // then
78         RecordedRequest request = server.takeRequest();
79         assertAuthorizationHeader(request);
80         assertRequestPath(request, RESOURCE);
81         assertRequestMethod(request, RequestMethod.POST);
82         assertThat(actual.getName()).isEqualTo(name);
83         assertThat(actual.getPortableDataHash()).isEqualTo("d41d8cd98f00b204e9800998ecf8427e+0");
84         assertThat(actual.getManifestText()).isEmpty();
85     }
86
87     @Test
88     public void createCollectionWithManifest() throws Exception {
89
90         // given
91         server.enqueue(getResponse("collections-create-manifest"));
92
93         String name = "Super Collection";
94         String manifestText = ". 7df44272090cee6c0732382bba415ee9+70+Aa5ece4560e3329315165b36c239b8ab79c888f8a@5a1d5708 0:70:README.md\n";
95         
96         Collection collection = new Collection();
97         collection.setName(name);
98         collection.setManifestText(manifestText);
99
100         // when
101         Collection actual = client.create(collection);
102
103         // then
104         RecordedRequest request = server.takeRequest();
105         assertAuthorizationHeader(request);
106         assertRequestPath(request, RESOURCE);
107         assertRequestMethod(request, RequestMethod.POST);
108         assertThat(actual.getName()).isEqualTo(name);
109         assertThat(actual.getPortableDataHash()).isEqualTo("d41d8cd98f00b204e9800998ecf8427e+0");
110         assertThat(actual.getManifestText()).isEqualTo(manifestText);
111     }
112 }