use of com.artipie.http.rs.RsStatus in project artipie by artipie.
the class AuthAndPermissionsTest method johnCanDelete.
@Test
void johnCanDelete() throws IOException {
final RsStatus status = RsStatus.NO_CONTENT;
MatcherAssert.assertThat(new BasicAuthSlice(new SliceSimple(new RsWithStatus(status)), new AuthFromYaml(this.credentials()), new Permission.ByName("delete", this.permissions())).response(new RequestLine("PUT", "/foo", "HTTP/1.2").toString(), new ListOf<Map.Entry<String, String>>(new Authorization(String.format("Basic %s", new Base64Encoded("john:123").asString()))), Flowable.empty()), new RsHasStatus(status));
}
use of com.artipie.http.rs.RsStatus in project artipie by artipie.
the class AuthAndPermissionsTest method publicRepoWorksWithAuth.
@Test
void publicRepoWorksWithAuth() throws IOException {
final RsStatus status = RsStatus.OK;
MatcherAssert.assertThat(new BasicAuthSlice(new SliceSimple(new RsWithStatus(status)), new AuthFromYaml(this.credentials()), new Permission.ByName("delete", this.allAllowedPermissions())).response(new RequestLine("GET", "/foo", "HTTP/1.2").toString(), new ListOf<Map.Entry<String, String>>(new Authorization(String.format("Basic %s", new Base64Encoded("admin:abc").asString()))), Flowable.empty()), new RsHasStatus(status));
}
use of com.artipie.http.rs.RsStatus in project artipie by artipie.
the class AuthAndPermissionsTest method authIsNotRequiredForPublicRepo.
@Test
void authIsNotRequiredForPublicRepo() {
final RsStatus status = RsStatus.ACCEPTED;
MatcherAssert.assertThat(new BasicAuthSlice(new SliceSimple(new RsWithStatus(status)), new AuthFromYaml(this.credentials()), new Permission.ByName("install", this.allAllowedPermissions())).response(new RequestLine("GET", "/foo", "HTTP/1.2").toString(), Collections.emptyList(), Flowable.empty()), new RsHasStatus(status));
}
use of com.artipie.http.rs.RsStatus in project artipie by artipie.
the class ResponseMetricsSliceTest method shouldForwardRequestUnmodified.
@Test
void shouldForwardRequestUnmodified() {
final Header header = new Header("header1", "value1");
final byte[] body = "some code".getBytes();
final RsStatus status = RsStatus.CREATED;
MatcherAssert.assertThat(new ResponseMetricsSlice((rsline, rsheaders, rsbody) -> new RsFull(status, rsheaders, rsbody), this.metrics).response(new RequestLine(RqMethod.POST, "/some_upload.war").toString(), new Headers.From(header), Flowable.just(ByteBuffer.wrap(body))), new ResponseMatcher(status, body, header));
}
use of com.artipie.http.rs.RsStatus in project artipie by artipie.
the class AuthAndPermissionsTest method adminCanDeploy.
@Test
void adminCanDeploy() throws IOException {
final RsStatus status = RsStatus.ACCEPTED;
MatcherAssert.assertThat(new BasicAuthSlice(new SliceSimple(new RsWithStatus(status)), new AuthFromYaml(this.credentials()), new Permission.ByName("deploy", this.permissions())).response(new RequestLine("PUT", "/foo", "HTTP/1.2").toString(), new ListOf<Map.Entry<String, String>>(new Authorization(String.format("Basic %s", new Base64Encoded("admin:abc").asString()))), Flowable.empty()), new RsHasStatus(status));
}
Aggregations