s3restful_service_test.cpp 1.8 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
#include <algorithm>
#include <fstream>
#include <iostream>
#include <vector>

#include "gtest/gtest.h"
#include "s3http_headers.h"
#include "s3restful_service.cpp"

using namespace std;

TEST(S3RESTfulService, GetWithWrongHeader) {
    HTTPHeaders headers;
    map<string, string> params;
    S3RESTfulService service;

    string url = "https://www.bing.com/";
    headers.Add(HOST, url);
    headers.Add(CONTENTTYPE, "plain/text");

    Response resp = service.get(url, headers, params);

    EXPECT_EQ(OK, resp.getStatus());
    EXPECT_EQ("Success", resp.getMessage());
    // 302 returned from bing.com
    EXPECT_EQ(true, resp.getRawData().size() < 500);
}

TEST(S3RESTfulService, DISABLED_GetWithEmptyHeader) {
    HTTPHeaders headers;
    map<string, string> params;
    string url;
    S3RESTfulService service;

    url = "https://www.bing.com/";

    Response resp = service.get(url, headers, params);

    EXPECT_EQ(OK, resp.getStatus());
    EXPECT_EQ("Success", resp.getMessage());
    EXPECT_EQ(true, resp.getRawData().size() > 10000);
}

TEST(S3RESTfulService, GetWithoutURL) {
    HTTPHeaders headers;
    map<string, string> params;
    string url;
    S3RESTfulService service;

    Response resp = service.get(url, headers, params);

    EXPECT_EQ(FAIL, resp.getStatus());
A
Adam Lee 已提交
53
    EXPECT_EQ("Failed to talk to s3 service URL using bad/illegal format or missing URL",
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
              resp.getMessage());
}

TEST(S3RESTfulService, GetWithWrongURL) {
    HTTPHeaders headers;
    map<string, string> params;
    string url;
    S3RESTfulService service;

    url = "https://www.bing.com/pivotal.html";

    Response resp = service.get(url, headers, params);

    EXPECT_EQ(OK, resp.getStatus());
    EXPECT_EQ("Success", resp.getMessage());

    // 404 returned from bing.com
    EXPECT_EQ(0, resp.getRawData().size());
}