Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1254)

Unified Diff: content/renderer/npapi/webplugin_impl_unittest.cc

Issue 1853793003: Remove content/renderer/npapi (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/renderer/npapi/webplugin_impl.cc ('k') | content/renderer/render_frame_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/npapi/webplugin_impl_unittest.cc
diff --git a/content/renderer/npapi/webplugin_impl_unittest.cc b/content/renderer/npapi/webplugin_impl_unittest.cc
deleted file mode 100644
index 5137b0528ccf25f8e951a792c50d7599a2cfcafa..0000000000000000000000000000000000000000
--- a/content/renderer/npapi/webplugin_impl_unittest.cc
+++ /dev/null
@@ -1,234 +0,0 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include <stddef.h>
-#include <stdint.h>
-
-#include "base/strings/string_util.h"
-#include "content/renderer/npapi/webplugin_impl.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "third_party/WebKit/public/platform/WebString.h"
-#include "third_party/WebKit/public/platform/WebURLRequest.h"
-
-using blink::WebHTTPBody;
-using blink::WebString;
-using blink::WebURLRequest;
-
-namespace content {
-
-namespace {
-
-std::string GetHeader(const WebURLRequest& request, const char* name) {
- std::string result;
- base::TrimWhitespaceASCII(
- request.httpHeaderField(WebString::fromUTF8(name)).utf8(),
- base::TRIM_ALL,
- &result);
- return result;
-}
-
-std::string GetBodyText(const WebURLRequest& request) {
- const WebHTTPBody& body = request.httpBody();
- if (body.isNull())
- return std::string();
-
- std::string result;
- size_t i = 0;
- WebHTTPBody::Element element;
- while (body.elementAt(i++, element)) {
- if (element.type == WebHTTPBody::Element::TypeData) {
- result.append(element.data.data(), element.data.size());
- } else {
- NOTREACHED() << "unexpected element type encountered!";
- }
- }
- return result;
-}
-
-} // namespace
-
-// The Host functions for NPN_PostURL and NPN_PostURLNotify
-// need to parse out some HTTP headers. Make sure it works
-// with the following tests
-
-TEST(WebPluginImplTest, PostParserSimple) {
- // Test a simple case with headers & data
- const char *ex1 = "foo: bar\nContent-length: 10\n\nabcdefghij";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
- EXPECT_EQ("bar", GetHeader(request, "foo"));
- EXPECT_EQ(0U, GetHeader(request, "bar").length());
- EXPECT_EQ(0U, GetHeader(request, "Content-length").length());
- EXPECT_EQ("abcdefghij", GetBodyText(request));
-}
-
-TEST(WebPluginImplTest, PostParserLongHeader) {
- // Test a simple case with long headers
- const char *ex1 = "foo: 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789\n\nabcdefghij";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
- EXPECT_EQ(100U, GetHeader(request, "foo").length());
-}
-
-TEST(WebPluginImplTest, PostParserManyHeaders) {
- // Test a simple case with long headers
- const char *ex1 = "h1:h1\nh2:h2\nh3:h3\nh4:h4\nh5:h5\nh6:h6\nh7:h7\nh8:h8\nh9:h9\nh10:h10\n\nbody";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
- EXPECT_EQ("h1", GetHeader(request, "h1"));
- EXPECT_EQ("h2", GetHeader(request, "h2"));
- EXPECT_EQ("h3", GetHeader(request, "h3"));
- EXPECT_EQ("h4", GetHeader(request, "h4"));
- EXPECT_EQ("h5", GetHeader(request, "h5"));
- EXPECT_EQ("h6", GetHeader(request, "h6"));
- EXPECT_EQ("h7", GetHeader(request, "h7"));
- EXPECT_EQ("h8", GetHeader(request, "h8"));
- EXPECT_EQ("h9", GetHeader(request, "h9"));
- EXPECT_EQ("h10", GetHeader(request, "h10"));
- EXPECT_EQ("body", GetBodyText(request));
-}
-
-TEST(WebPluginImplTest, PostParserDuplicateHeaders) {
- // Test a simple case with long headers
- // What value gets returned doesn't really matter. It shouldn't error
- // out.
- const char *ex1 = "h1:h1\nh1:h2\n\nbody";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
-}
-
-TEST(WebPluginImplTest, PostParserNoHeaders) {
- // Test a simple case with no headers but with data
- const char *ex1 = "\nabcdefghij";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
- EXPECT_EQ(0U, GetHeader(request, "foo").length());
- EXPECT_EQ(0U, GetHeader(request, "bar").length());
- EXPECT_EQ(0U, GetHeader(request, "Content-length").length());
- EXPECT_EQ("abcdefghij", GetBodyText(request));
-}
-
-TEST(WebPluginImplTest, PostParserNoBody) {
- // Test a simple case with headers and no body
- const char *ex1 = "Foo:bar\n\n";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
- EXPECT_EQ("bar", GetHeader(request, "foo"));
- EXPECT_EQ(0U, GetHeader(request, "bar").length());
- EXPECT_EQ(0U, GetHeader(request, "Content-length").length());
- EXPECT_EQ(0U, GetBodyText(request).length());
-}
-
-TEST(WebPluginImplTest, PostParserBodyWithNewLines) {
- // Test a simple case with headers and no body
- const char *ex1 = "Foo:bar\n\n\n\nabcdefg\n\nabcdefg";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
- EXPECT_EQ(GetBodyText(request), "\n\nabcdefg\n\nabcdefg");
-}
-
-TEST(WebPluginImplTest, PostParserErrorNoBody) {
- // Test with headers and no body
- const char *ex1 = "Foo:bar\n";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
-}
-
-TEST(WebPluginImplTest, PostParserErrorEmpty) {
- // Test with an empty string
- const char *ex1 = "";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
-}
-
-TEST(WebPluginImplTest, PostParserEmptyName) {
- // Test an error case with an empty header name field
- const char *ex1 = "foo:bar\n:blat\n\nbody";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
- EXPECT_EQ("bar", GetHeader(request, "foo"));
- EXPECT_EQ("body", GetBodyText(request));
-}
-
-TEST(WebPluginImplTest, PostParserEmptyValue) {
- // Test an error case with an empty value field
- const char *ex1 = "foo:bar\nbar:\n\nbody";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
- EXPECT_EQ("bar", GetHeader(request, "foo"));
- EXPECT_EQ(0U, GetHeader(request, "bar").length());
- EXPECT_EQ("body", GetBodyText(request));
-}
-
-TEST(WebPluginImplTest, PostParserCRLF) {
- // Test an error case with an empty value field
- const char *ex1 = "foo: bar\r\nbar:\r\n\r\nbody\r\n\r\nbody2";
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- static_cast<uint32_t>(strlen(ex1)));
- EXPECT_TRUE(rv);
- EXPECT_EQ("bar", GetHeader(request, "foo"));
- EXPECT_EQ(0U, GetHeader(request, "bar").length());
- EXPECT_EQ("body\r\n\r\nbody2", GetBodyText(request));
-}
-
-TEST(WebPluginImplTest, PostParserBodyWithBinaryData) {
- // Test a simple case with headers and binary data.
- char ex1[33] = "foo: bar\nContent-length: 10\n\n";
- unsigned int binary_data = 0xFFFFFFF0;
- memcpy(ex1 + strlen("foo: bar\nContent-length: 10\n\n"), &binary_data,
- sizeof(binary_data));
-
- WebURLRequest request;
- request.initialize();
- bool rv = WebPluginImpl::SetPostData(&request, ex1,
- sizeof(ex1)/sizeof(ex1[0]));
- EXPECT_TRUE(rv);
- EXPECT_EQ("bar", GetHeader(request, "foo"));
- EXPECT_EQ(0U, GetHeader(request, "bar").length());
- EXPECT_EQ(0U, GetHeader(request, "Content-length").length());
-
- std::string body = GetBodyText(request);
-
- EXPECT_EQ(0xF0, (unsigned char)body[0]);
- EXPECT_EQ(0xFF, (unsigned char)body[1]);
- EXPECT_EQ(0xFF, (unsigned char)body[2]);
- EXPECT_EQ(0xFF, (unsigned char)body[3]);
-}
-
-} // namespace content
« no previous file with comments | « content/renderer/npapi/webplugin_impl.cc ('k') | content/renderer/render_frame_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698