Search in sources :

Example 1 with RsHasStatus

use of com.artipie.http.hm.RsHasStatus in project artipie by artipie.

the class DockerProxyTest method shouldBuildFromConfig.

@ParameterizedTest
@MethodSource("goodConfigs")
void shouldBuildFromConfig(final String yaml) throws Exception {
    final Slice slice = dockerProxy(yaml);
    MatcherAssert.assertThat(slice.response(new RequestLine(RqMethod.GET, "/").toString(), Headers.EMPTY, Flowable.empty()), new RsHasStatus(new IsNot<>(new CustomMatcher<>("is server error") {

        @Override
        public boolean matches(final Object item) {
            return ((RsStatus) item).serverError();
        }
    })));
}
Also used : RequestLine(com.artipie.http.rq.RequestLine) IsNot(org.hamcrest.core.IsNot) RsHasStatus(com.artipie.http.hm.RsHasStatus) Slice(com.artipie.http.Slice) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest) MethodSource(org.junit.jupiter.params.provider.MethodSource)

Example 2 with RsHasStatus

use of com.artipie.http.hm.RsHasStatus 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));
}
Also used : RsHasStatus(com.artipie.http.hm.RsHasStatus) RsStatus(com.artipie.http.rs.RsStatus) Authorization(com.artipie.http.headers.Authorization) BasicAuthSlice(com.artipie.http.auth.BasicAuthSlice) RequestLine(com.artipie.http.rq.RequestLine) RsWithStatus(com.artipie.http.rs.RsWithStatus) Permission(com.artipie.http.auth.Permission) ListOf(org.cactoos.list.ListOf) Base64Encoded(org.cactoos.text.Base64Encoded) Map(java.util.Map) SliceSimple(com.artipie.http.slice.SliceSimple) Test(org.junit.jupiter.api.Test)

Example 3 with RsHasStatus

use of com.artipie.http.hm.RsHasStatus 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));
}
Also used : RsHasStatus(com.artipie.http.hm.RsHasStatus) RsStatus(com.artipie.http.rs.RsStatus) Authorization(com.artipie.http.headers.Authorization) BasicAuthSlice(com.artipie.http.auth.BasicAuthSlice) RequestLine(com.artipie.http.rq.RequestLine) RsWithStatus(com.artipie.http.rs.RsWithStatus) Permission(com.artipie.http.auth.Permission) ListOf(org.cactoos.list.ListOf) Base64Encoded(org.cactoos.text.Base64Encoded) Map(java.util.Map) SliceSimple(com.artipie.http.slice.SliceSimple) Test(org.junit.jupiter.api.Test)

Example 4 with RsHasStatus

use of com.artipie.http.hm.RsHasStatus 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));
}
Also used : BasicAuthSlice(com.artipie.http.auth.BasicAuthSlice) RequestLine(com.artipie.http.rq.RequestLine) RsWithStatus(com.artipie.http.rs.RsWithStatus) RsHasStatus(com.artipie.http.hm.RsHasStatus) Permission(com.artipie.http.auth.Permission) RsStatus(com.artipie.http.rs.RsStatus) SliceSimple(com.artipie.http.slice.SliceSimple) Test(org.junit.jupiter.api.Test)

Example 5 with RsHasStatus

use of com.artipie.http.hm.RsHasStatus 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));
}
Also used : RsHasStatus(com.artipie.http.hm.RsHasStatus) RsStatus(com.artipie.http.rs.RsStatus) Authorization(com.artipie.http.headers.Authorization) BasicAuthSlice(com.artipie.http.auth.BasicAuthSlice) RequestLine(com.artipie.http.rq.RequestLine) RsWithStatus(com.artipie.http.rs.RsWithStatus) Permission(com.artipie.http.auth.Permission) ListOf(org.cactoos.list.ListOf) Base64Encoded(org.cactoos.text.Base64Encoded) Map(java.util.Map) SliceSimple(com.artipie.http.slice.SliceSimple) Test(org.junit.jupiter.api.Test)

Aggregations

RsHasStatus (com.artipie.http.hm.RsHasStatus)27 Test (org.junit.jupiter.api.Test)23 RequestLine (com.artipie.http.rq.RequestLine)20 SliceHasResponse (com.artipie.http.hm.SliceHasResponse)15 RsWithStatus (com.artipie.http.rs.RsWithStatus)10 Content (com.artipie.asto.Content)9 Key (com.artipie.asto.Key)9 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)9 RsStatus (com.artipie.http.rs.RsStatus)8 SliceSimple (com.artipie.http.slice.SliceSimple)7 Storage (com.artipie.asto.Storage)6 ContentIs (com.artipie.asto.test.ContentIs)6 MetadataXml (com.artipie.maven.MetadataXml)6 InMemoryStorage (com.artipie.asto.memory.InMemoryStorage)5 RsHasBody (com.artipie.http.hm.RsHasBody)5 BlockingStorage (com.artipie.asto.blocking.BlockingStorage)4 Slice (com.artipie.http.Slice)4 BasicAuthSlice (com.artipie.http.auth.BasicAuthSlice)4 Permission (com.artipie.http.auth.Permission)4 Authorization (com.artipie.http.headers.Authorization)4