Skip to content

Commit

Permalink
applying filter changed reference to RequestSpecification,
Browse files Browse the repository at this point in the history
no need to decorate as we do nothing with the decorates RequestSpecification
  • Loading branch information
globalworming committed May 20, 2020
1 parent b96190a commit 2095ed1
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 19 deletions.
@@ -1,24 +1,34 @@
package net.serenitybdd.rest.decorators.request;

import io.restassured.authentication.AuthenticationScheme;
import io.restassured.filter.*;
import io.restassured.http.Method;
import io.restassured.internal.*;
import io.restassured.response.*;
import io.restassured.specification.*;
import net.serenitybdd.core.*;
import net.serenitybdd.core.rest.*;
import net.serenitybdd.rest.stubs.*;
import net.serenitybdd.rest.utils.*;
import io.restassured.filter.Filter;
import io.restassured.internal.RequestSpecificationImpl;
import io.restassured.response.Response;
import io.restassured.specification.FilterableRequestSpecification;
import io.restassured.specification.ProxySpecification;
import io.restassured.specification.RequestSpecification;
import net.serenitybdd.core.Serenity;
import net.serenitybdd.core.rest.RestMethod;
import net.serenitybdd.rest.stubs.ResponseStub;
import net.serenitybdd.rest.utils.RestExecutionHelper;
import org.apache.http.client.HttpClient;
import org.slf4j.*;

import java.net.*;
import java.util.*;

import static net.serenitybdd.core.rest.RestMethod.*;
import static net.thucydides.core.steps.StepEventBus.*;
import static org.apache.http.util.Args.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.net.URI;
import java.net.URL;
import java.util.List;
import java.util.Map;

import static net.serenitybdd.core.rest.RestMethod.DELETE;
import static net.serenitybdd.core.rest.RestMethod.GET;
import static net.serenitybdd.core.rest.RestMethod.HEAD;
import static net.serenitybdd.core.rest.RestMethod.OPTIONS;
import static net.serenitybdd.core.rest.RestMethod.PATCH;
import static net.serenitybdd.core.rest.RestMethod.POST;
import static net.serenitybdd.core.rest.RestMethod.PUT;
import static net.thucydides.core.steps.StepEventBus.getEventBus;
import static org.apache.http.util.Args.notNull;

/**
* User: YamStranger
Expand Down Expand Up @@ -324,8 +334,9 @@ private Response stubbed() {
*/
@Override
public RequestSpecification filter(Filter filter){
return RestDecorationHelper.decorate(core.filter(filter));
};
core.filter(filter);
return this;
}

@Override
public List<Filter> getDefinedFilters() {
Expand Down
@@ -0,0 +1,32 @@
package net.serenitybdd.screenplay.rest.examples;

import io.restassured.filter.session.SessionFilter;
import net.serenitybdd.junit.runners.SerenityRunner;
import net.serenitybdd.screenplay.Actor;
import net.serenitybdd.screenplay.rest.abilities.CallAnApi;
import net.serenitybdd.screenplay.rest.interactions.Get;
import org.junit.Test;
import org.junit.runner.RunWith;

import static net.serenitybdd.screenplay.rest.questions.ResponseConsequence.seeThatResponse;

@RunWith(SerenityRunner.class)
public class WhenUsingSessionFilterRegressionTest {

Actor actor = Actor.named("actor").whoCan(CallAnApi.at("https://reqres.in"));

@Test
public void didThrowNPE() {
actor.attemptsTo(Get.resource("/").with(request -> request.filter(new SessionFilter())));
actor.should(seeThatResponse("bad request", response -> response.statusCode(200)));

}
@Test
public void didSucceed() {
actor.attemptsTo(Get.resource("/").with(request -> {
request.filter(new SessionFilter());
return request;
}));
actor.should(seeThatResponse("bad request", response -> response.statusCode(200)));
}
}

0 comments on commit 2095ed1

Please sign in to comment.