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

Unified Diff: sync/test/engine/mock_connection_manager.cc

Issue 9348036: Trim code from sync's ServerConnectionManager (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase after Fred's patch Created 8 years, 9 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 | « sync/test/engine/mock_connection_manager.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sync/test/engine/mock_connection_manager.cc
diff --git a/sync/test/engine/mock_connection_manager.cc b/sync/test/engine/mock_connection_manager.cc
index f73b14ea92e58fe6d733bd1bafc67f25e338310a..ab95bce6f2afe92e3fb39c5b03603b7034417f68 100644
--- a/sync/test/engine/mock_connection_manager.cc
+++ b/sync/test/engine/mock_connection_manager.cc
@@ -36,8 +36,11 @@ using syncable::MODEL_TYPE_COUNT;
using syncable::ModelType;
using syncable::WriteTransaction;
+static char kValidAuthToken[] = "AuthToken";
+
MockConnectionManager::MockConnectionManager(syncable::Directory* directory)
: ServerConnectionManager("unused", 0, false, "version"),
+ server_reachable_(true),
conflict_all_commits_(false),
conflict_n_commits_(0),
next_new_id_(10000),
@@ -55,8 +58,8 @@ MockConnectionManager::MockConnectionManager(syncable::Directory* directory)
next_position_in_parent_(2),
use_legacy_bookmarks_protocol_(false),
num_get_updates_requests_(0) {
- server_reachable_ = true;
SetNewTimestamp(0);
+ set_auth_token(kValidAuthToken);
}
MockConnectionManager::~MockConnectionManager() {
@@ -97,6 +100,17 @@ bool MockConnectionManager::PostBufferToPath(PostBufferParams* params,
WriteTransaction wt(FROM_HERE, syncable::UNITTEST, directory_);
}
+ if (auth_token.empty()) {
+ params->response.server_status = HttpResponse::SYNC_AUTH_ERROR;
+ return false;
+ }
+
+ if (auth_token != kValidAuthToken) {
+ // Simulate server-side auth failure.
+ params->response.server_status = HttpResponse::SYNC_AUTH_ERROR;
+ InvalidateAndClearAuthToken();
+ }
+
if (fail_next_postbuffer_) {
fail_next_postbuffer_ = false;
return false;
@@ -129,8 +143,6 @@ bool MockConnectionManager::PostBufferToPath(PostBufferParams* params,
ProcessCommit(&post, &response);
} else if (post.message_contents() == ClientToServerMessage::GET_UPDATES) {
ProcessGetUpdates(&post, &response);
- } else if (post.message_contents() == ClientToServerMessage::AUTHENTICATE) {
- ProcessAuthenticate(&post, &response, auth_token);
} else if (post.message_contents() == ClientToServerMessage::CLEAR_DATA) {
ProcessClearData(&post, &response);
} else {
@@ -164,14 +176,6 @@ bool MockConnectionManager::PostBufferToPath(PostBufferParams* params,
return result;
}
-bool MockConnectionManager::IsServerReachable() {
- return true;
-}
-
-bool MockConnectionManager::IsUserAuthenticated() {
- return true;
-}
-
sync_pb::GetUpdatesResponse* MockConnectionManager::GetUpdateResponse() {
if (update_queue_.empty()) {
NextUpdateBatch();
@@ -460,35 +464,6 @@ void MockConnectionManager::ProcessClearData(ClientToServerMessage* csm,
response->set_error_code(clear_user_data_response_errortype_);
}
-void MockConnectionManager::ProcessAuthenticate(
- ClientToServerMessage* csm,
- ClientToServerResponse* response,
- const std::string& auth_token) {
- ASSERT_EQ(csm->message_contents(), ClientToServerMessage::AUTHENTICATE);
- EXPECT_FALSE(auth_token.empty());
-
- if (auth_token != valid_auth_token_) {
- response->set_error_code(SyncEnums::AUTH_INVALID);
- return;
- }
-
- response->set_error_code(SyncEnums::SUCCESS);
- response->mutable_authenticate()->CopyFrom(auth_response_);
- auth_response_.Clear();
-}
-
-void MockConnectionManager::SetAuthenticationResponseInfo(
- const std::string& valid_auth_token,
- const std::string& user_display_name,
- const std::string& user_display_email,
- const std::string& user_obfuscated_id) {
- valid_auth_token_ = valid_auth_token;
- sync_pb::UserIdentification* user = auth_response_.mutable_user();
- user->set_display_name(user_display_name);
- user->set_email(user_display_email);
- user->set_obfuscated_id(user_obfuscated_id);
-}
-
bool MockConnectionManager::ShouldConflictThisCommit() {
bool conflict = false;
if (conflict_all_commits_) {
@@ -641,19 +616,17 @@ sync_pb::DataTypeProgressMarker const*
}
void MockConnectionManager::SetServerReachable() {
- server_status_ = HttpResponse::SERVER_CONNECTION_OK;
server_reachable_ = true;
-
- FOR_EACH_OBSERVER(ServerConnectionEventListener, listeners_,
- OnServerConnectionEvent(
- ServerConnectionEvent(server_status_, server_reachable_)));
}
void MockConnectionManager::SetServerNotReachable() {
- server_status_ = HttpResponse::CONNECTION_UNAVAILABLE;
server_reachable_ = false;
+}
- FOR_EACH_OBSERVER(ServerConnectionEventListener, listeners_,
- OnServerConnectionEvent(
- ServerConnectionEvent(server_status_, server_reachable_)));
+void MockConnectionManager::UpdateConnectionStatus() {
+ if (!server_reachable_) {
+ server_status_ = HttpResponse::CONNECTION_UNAVAILABLE;
+ } else {
+ server_status_ = HttpResponse::SERVER_CONNECTION_OK;
+ }
}
« no previous file with comments | « sync/test/engine/mock_connection_manager.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698