14 TEST(PatchTests, PatchTest) {
15 auto url =
Url{
base +
"/patch.html"};
16 auto payload =
Payload{{
"x",
"5"}};
28 TEST(PatchTests, PatchUnallowedTest) {
29 auto url =
Url{
base +
"/patch_unallowed.html"};
30 auto payload =
Payload{{
"x",
"5"}};
32 auto expected_text =
std::string{
"Method unallowed"};
40 TEST(PatchTests, SessionPatchTest) {
41 auto url =
Url{
base +
"/patch.html"};
42 auto payload =
Payload{{
"x",
"5"}};
46 auto response = session.
Patch();
57 TEST(PatchTests, SessionPatchUnallowedTest) {
58 auto url =
Url{
base +
"/patch_unallowed.html"};
59 auto payload =
Payload{{
"x",
"5"}};
63 auto response = session.
Patch();
64 auto expected_text =
std::string{
"Method unallowed"};
72 TEST(PatchTests, SessionPatchAfterGetTest) {
75 auto url =
Url{
base +
"/get.html"};
77 auto response = session.
Get();
79 auto url =
Url{
base +
"/patch.html"};
80 auto payload =
Payload{{
"x",
"5"}};
83 auto response = session.
Patch();
94 TEST(PatchTests, SessionPatchUnallowedAfterGetTest) {
97 auto url =
Url{
base +
"/get.html"};
99 auto response = session.
Get();
101 auto url =
Url{
base +
"/patch_unallowed.html"};
102 auto payload =
Payload{{
"x",
"5"}};
105 auto response = session.
Patch();
106 auto expected_text =
std::string{
"Method unallowed"};
114 TEST(PatchTests, SessionPatchAfterHeadTest) {
117 auto url =
Url{
base +
"/get.html"};
119 auto response = session.
Head();
121 auto url =
Url{
base +
"/patch.html"};
122 auto payload =
Payload{{
"x",
"5"}};
125 auto response = session.
Patch();
136 TEST(PatchTests, SessionPatchUnallowedAfterHeadTest) {
139 auto url =
Url{
base +
"/get.html"};
141 auto response = session.
Head();
143 auto url =
Url{
base +
"/patch_unallowed.html"};
144 auto payload =
Payload{{
"x",
"5"}};
147 auto response = session.
Patch();
148 auto expected_text =
std::string{
"Method unallowed"};
156 TEST(PatchTests, SessionPatchAfterPostTest) {
159 auto url =
Url{
base +
"/url_post.html"};
160 auto payload =
Payload{{
"x",
"5"}};
162 auto response = session.
Post();
164 auto url =
Url{
base +
"/patch.html"};
165 auto payload =
Payload{{
"x",
"5"}};
168 auto response = session.
Patch();
179 TEST(PatchTests, SessionPatchUnallowedAfterPostTest) {
182 auto url =
Url{
base +
"/url_post.html"};
183 auto payload =
Payload{{
"x",
"5"}};
185 auto response = session.
Post();
187 auto url =
Url{
base +
"/patch_unallowed.html"};
188 auto payload =
Payload{{
"x",
"5"}};
191 auto response = session.
Patch();
192 auto expected_text =
std::string{
"Method unallowed"};
200 TEST(PatchTests, AsyncPatchTest) {
201 auto url =
Url{
base +
"/patch.html"};
202 auto payload =
Payload{{
"x",
"5"}};
204 auto response = future_response.get();
215 TEST(PatchTests, AsyncPatchUnallowedTest) {
216 auto url =
Url{
base +
"/patch_unallowed.html"};
217 auto payload =
Payload{{
"x",
"5"}};
219 auto response = future_response.get();
220 auto expected_text =
std::string{
"Method unallowed"};
228 TEST(PatchTests, AsyncMultiplePatchTest) {
229 auto url =
Url{
base +
"/patch.html"};
230 auto payload =
Payload{{
"x",
"5"}};
231 std::vector<AsyncResponse> responses;
232 for (
int i = 0;
i < 10; ++
i) {
235 for (
auto& future_response : responses) {
236 auto response = future_response.get();
248 TEST(PatchTests, AsyncMultiplePatchUnallowedTest) {
249 auto url =
Url{
base +
"/patch_unallowed.html"};
250 auto payload =
Payload{{
"x",
"5"}};
251 std::vector<AsyncResponse> responses;
252 for (
int i = 0;
i < 10; ++
i) {
255 for (
auto& future_response : responses) {
256 auto response = future_response.get();
257 auto expected_text =
std::string{
"Method unallowed"};
266 int main(
int argc,
char** argv) {
Environment * AddGlobalTestEnvironment(Environment *env)
void SetUrl(const Url &url)
Response Patch(Ts &&...ts)
void SetPayload(Payload &&payload)
#define EXPECT_EQ(expected, actual)
TEST(PatchTests, PatchTest)
int RUN_ALL_TESTS() GTEST_MUST_USE_RESULT_
GTEST_API_ void InitGoogleTest(int *argc, char **argv)
int main(int argc, char **argv)
AsyncResponse PatchAsync(Ts...ts)