2 * Copyright (C) The Arvados Authors. All rights reserved.
4 * SPDX-License-Identifier: AGPL-3.0 OR Apache-2.0
8 package org.arvados.client.test.utils;
10 import org.arvados.client.config.FileConfigProvider;
11 import okhttp3.mockwebserver.MockResponse;
12 import okhttp3.mockwebserver.RecordedRequest;
13 import org.apache.commons.io.FileUtils;
16 import java.io.IOException;
17 import java.nio.charset.Charset;
19 import static org.assertj.core.api.Assertions.assertThat;
21 public final class ApiClientTestUtils {
23 static final String BASE_URL = "/arvados/v1/";
25 private ApiClientTestUtils() {}
27 public static MockResponse getResponse(String filename) throws IOException {
28 String filePath = String.format("src/test/resources/org/arvados/client/api/client/%s.json", filename);
29 File jsonFile = new File(filePath);
30 String json = FileUtils.readFileToString(jsonFile, Charset.defaultCharset());
31 return new MockResponse().setBody(json);
34 public static void assertAuthorizationHeader(RecordedRequest request) {
35 assertThat(request.getHeader("authorization")).isEqualTo("OAuth2 " + new FileConfigProvider().getApiToken());
38 public static void assertRequestPath(RecordedRequest request, String subPath) {
39 assertThat(request.getPath()).isEqualTo(BASE_URL + subPath);
42 public static void assertRequestMethod(RecordedRequest request, RequestMethod requestMethod) {
43 assertThat(request.getMethod()).isEqualTo(requestMethod.name());