| Index: blimp/helium/owned_register_unittest.cc
|
| diff --git a/blimp/helium/owned_register_unittest.cc b/blimp/helium/owned_register_unittest.cc
|
| deleted file mode 100644
|
| index 6c9e83a46aef31a671a08003c57071e47e5ca5dc..0000000000000000000000000000000000000000
|
| --- a/blimp/helium/owned_register_unittest.cc
|
| +++ /dev/null
|
| @@ -1,149 +0,0 @@
|
| -// Copyright 2016 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 "blimp/helium/owned_register.h"
|
| -
|
| -#include <memory>
|
| -#include <string>
|
| -
|
| -#include "base/bind.h"
|
| -#include "base/memory/ptr_util.h"
|
| -#include "blimp/helium/helium_test.h"
|
| -#include "blimp/helium/stream_helpers.h"
|
| -#include "blimp/helium/syncable_common.h"
|
| -#include "testing/gmock/include/gmock/gmock.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -#include "third_party/protobuf/src/google/protobuf/io/zero_copy_stream_impl_lite.h"
|
| -
|
| -namespace blimp {
|
| -namespace helium {
|
| -namespace {
|
| -
|
| -class OwnedRegisterTest : public HeliumTest {
|
| - public:
|
| - OwnedRegisterTest() {}
|
| -
|
| - MOCK_METHOD0(OnEngineCallbackCalled, void());
|
| - MOCK_METHOD0(OnClientCallbackCalled, void());
|
| -
|
| - protected:
|
| - void InitRegisters(Peer owner) {
|
| - client_reg_ = base::MakeUnique<OwnedRegister<int>>(Peer::CLIENT, owner);
|
| - engine_reg_ = base::MakeUnique<OwnedRegister<int>>(Peer::ENGINE, owner);
|
| - client_reg_->SetLocalUpdateCallback(base::Bind(
|
| - &OwnedRegisterTest::OnClientCallbackCalled, base::Unretained(this)));
|
| - engine_reg_->SetLocalUpdateCallback(base::Bind(
|
| - &OwnedRegisterTest::OnEngineCallbackCalled, base::Unretained(this)));
|
| - }
|
| -
|
| - // Takes a changeset from |from_lww_register| and applies it to
|
| - // |to_lww_register|.
|
| - void Sync(const OwnedRegister<int>& from_register,
|
| - OwnedRegister<int>* to_register);
|
| -
|
| - std::unique_ptr<OwnedRegisterChangeset<int>> CreateMockChangeset(
|
| - Revision revision,
|
| - int value);
|
| -
|
| - std::unique_ptr<OwnedRegister<int>> client_reg_;
|
| - std::unique_ptr<OwnedRegister<int>> engine_reg_;
|
| -
|
| - private:
|
| - DISALLOW_COPY_AND_ASSIGN(OwnedRegisterTest);
|
| -};
|
| -
|
| -// Takes a changeset from |from_register| and applies it to
|
| -// |to_lww_register|.
|
| -void OwnedRegisterTest::Sync(const OwnedRegister<int>& from_register,
|
| - OwnedRegister<int>* to_register) {
|
| - auto changeset = from_register.CreateChangeset(from_register.GetRevision());
|
| - ASSERT_TRUE(to_register->ValidateChangeset(*changeset));
|
| - to_register->ApplyChangeset(*changeset);
|
| -}
|
| -
|
| -std::unique_ptr<OwnedRegisterChangeset<int>>
|
| -OwnedRegisterTest::CreateMockChangeset(Revision revision, int value) {
|
| - std::unique_ptr<OwnedRegister<int>::Changeset> changeset =
|
| - base::MakeUnique<OwnedRegister<int>::Changeset>();
|
| - changeset->last_modified.Set(revision);
|
| - changeset->value.Set(value);
|
| - return changeset;
|
| -}
|
| -
|
| -TEST_F(OwnedRegisterTest, SetIncrementsLocalVersion) {
|
| - InitRegisters(Peer::ENGINE);
|
| -
|
| - EXPECT_CALL(*this, OnClientCallbackCalled()).Times(0);
|
| - EXPECT_CALL(*this, OnEngineCallbackCalled()).Times(1);
|
| -
|
| - Revision client_rev = client_reg_->GetRevision();
|
| - Revision engine_rev = engine_reg_->GetRevision();
|
| - engine_reg_->Set(175);
|
| - EXPECT_EQ(175, engine_reg_->Get());
|
| -
|
| - EXPECT_EQ(client_reg_->GetRevision(), client_rev);
|
| - EXPECT_GT(engine_reg_->GetRevision(), engine_rev);
|
| -}
|
| -
|
| -TEST_F(OwnedRegisterTest, SyncSuccessfully) {
|
| - InitRegisters(Peer::CLIENT);
|
| -
|
| - EXPECT_CALL(*this, OnClientCallbackCalled()).Times(1);
|
| - EXPECT_CALL(*this, OnEngineCallbackCalled()).Times(0);
|
| -
|
| - Revision client_rev = client_reg_->GetRevision();
|
| - Revision engine_rev = engine_reg_->GetRevision();
|
| - client_reg_->Set(123);
|
| -
|
| - Sync(*client_reg_, engine_reg_.get());
|
| - EXPECT_EQ(123, engine_reg_->Get());
|
| -
|
| - EXPECT_GT(client_reg_->GetRevision(), client_rev);
|
| - EXPECT_EQ(engine_reg_->GetRevision(), engine_rev);
|
| -}
|
| -
|
| -TEST_F(OwnedRegisterTest, ChangesetIgnored) {
|
| - InitRegisters(Peer::CLIENT);
|
| -
|
| - EXPECT_CALL(*this, OnClientCallbackCalled()).Times(1);
|
| - EXPECT_CALL(*this, OnEngineCallbackCalled()).Times(0);
|
| -
|
| - Revision engine_rev = engine_reg_->GetRevision();
|
| - client_reg_->Set(123);
|
| - Sync(*client_reg_, engine_reg_.get());
|
| - EXPECT_EQ(123, engine_reg_->Get());
|
| -
|
| - Sync(*client_reg_, engine_reg_.get());
|
| - EXPECT_EQ(123, engine_reg_->Get());
|
| -
|
| - EXPECT_EQ(engine_reg_->GetRevision(), engine_rev);
|
| -}
|
| -
|
| -TEST_F(OwnedRegisterTest, ChangesetsAppliedOutOfOrderFails) {
|
| - InitRegisters(Peer::CLIENT);
|
| -
|
| - EXPECT_CALL(*this, OnClientCallbackCalled()).Times(1);
|
| - EXPECT_CALL(*this, OnEngineCallbackCalled()).Times(0);
|
| -
|
| - // Set up the Engine to be at 0:1 revision
|
| - client_reg_->Set(123);
|
| -
|
| - Sync(*client_reg_, engine_reg_.get());
|
| - EXPECT_EQ(123, engine_reg_->Get());
|
| -
|
| - EXPECT_FALSE(client_reg_->ValidateChangeset(*CreateMockChangeset(0u, 5)));
|
| -}
|
| -
|
| -TEST_F(OwnedRegisterTest, InvalidOperationForPeer) {
|
| - InitRegisters(Peer::ENGINE);
|
| -
|
| - EXPECT_CALL(*this, OnClientCallbackCalled()).Times(0);
|
| - EXPECT_CALL(*this, OnEngineCallbackCalled()).Times(0);
|
| -
|
| - EXPECT_FALSE(engine_reg_->ValidateChangeset(*CreateMockChangeset(1u, 5)));
|
| -}
|
| -
|
| -} // namespace
|
| -} // namespace helium
|
| -} // namespace blimp
|
|
|