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

Unified Diff: sync/internal_api/test/fake_server_http_post_provider.cc

Issue 115243007: Basic implementation of the Sync C++ fake server (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years 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
Index: sync/internal_api/test/fake_server_http_post_provider.cc
diff --git a/sync/internal_api/test/fake_server_http_post_provider.cc b/sync/internal_api/test/fake_server_http_post_provider.cc
new file mode 100644
index 0000000000000000000000000000000000000000..401f4debd2f7ea1afe3247729366dbb186a65fba
--- /dev/null
+++ b/sync/internal_api/test/fake_server_http_post_provider.cc
@@ -0,0 +1,79 @@
+// Copyright 2013 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 "sync/internal_api/public/test/fake_server_http_post_provider.h"
+
+#include <string>
+
+#include "sync/internal_api/public/test/fake_server.h"
+
+namespace syncer {
+
+FakeServerHttpPostProviderFactory::FakeServerHttpPostProviderFactory(
+ FakeServer* fake_server) : fake_server_(fake_server) { }
+
+FakeServerHttpPostProviderFactory::~FakeServerHttpPostProviderFactory() { }
+
+void FakeServerHttpPostProviderFactory::Init(const std::string& user_agent) { }
+
+HttpPostProviderInterface* FakeServerHttpPostProviderFactory::Create() {
+ FakeServerHttpPostProvider* http =
+ new FakeServerHttpPostProvider(fake_server_);
+ http->AddRef();
+ return http;
+}
+
+void FakeServerHttpPostProviderFactory::Destroy(
+ HttpPostProviderInterface* http) {
+ static_cast<FakeServerHttpPostProvider*>(http)->Release();
+}
+
+FakeServerHttpPostProvider::FakeServerHttpPostProvider(
+ FakeServer* fake_server) : fake_server_(fake_server) { }
+
+FakeServerHttpPostProvider::~FakeServerHttpPostProvider() { }
+
+void FakeServerHttpPostProvider::SetExtraRequestHeaders(const char* headers) {
+ // TODO(pvalenzuela): Add assertions on this value.
+ extra_request_headers_.assign(headers);
+}
+
+void FakeServerHttpPostProvider::SetURL(const char* url, int port) {
+ // TODO(pvalenzuela): Add assertions on these values.
+ request_url_.assign(url);
+ request_port_ = port;
+}
+
+void FakeServerHttpPostProvider::SetPostPayload(const char* content_type,
+ int content_length,
+ const char* content) {
+ request_content_type_.assign(content_type);
+ request_content_.assign(content, content_length);
+}
+
+bool FakeServerHttpPostProvider::MakeSynchronousPost(int* error_code,
+ int* response_code) {
+ // This assumes that a POST is being made to /command.
+ response_.assign(fake_server_->HandleCommand(request_content_, error_code,
+ response_code));
+ return !response_.empty();
+}
+
+int FakeServerHttpPostProvider::GetResponseContentLength() const {
+ return response_.length();
+}
+
+const char* FakeServerHttpPostProvider::GetResponseContent() const {
+ return response_.c_str();
+}
+
+const std::string FakeServerHttpPostProvider::GetResponseHeaderValue(
+ const std::string& name) const {
+ return "";
+}
+
+void FakeServerHttpPostProvider::Abort() {
+}
+
+} // namespace syncer

Powered by Google App Engine
This is Rietveld 408576698