blob: 2681295969426724b4347465d9e2584946d80422 [file] [log] [blame]
Alex Chau4fded64e2019-07-17 16:21:511// Copyright 2019 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "chrome/browser/sharing/ack_message_handler.h"
6
7#include "chrome/browser/sharing/proto/sharing_message.pb.h"
8#include "testing/gtest/include/gtest/gtest.h"
9
10using SharingMessage = chrome_browser_sharing::SharingMessage;
11using namespace testing;
12
13namespace {
14
15const char kTestMessageId[] = "test_message_id";
16
17class TestObserver : public AckMessageHandler::AckMessageObserver {
18 public:
19 void OnAckReceived(const std::string& message_id) override {
20 received_message_id_ = message_id;
21 }
22
23 const std::string& received_message_id() { return received_message_id_; }
24
25 private:
26 std::string received_message_id_;
27};
28
29class AckMessageHandlerTest : public Test {
30 protected:
31 AckMessageHandlerTest() { ack_message_handler_.AddObserver(&test_observer_); }
32
33 AckMessageHandler ack_message_handler_;
34 TestObserver test_observer_;
35};
36
37} // namespace
38
39TEST_F(AckMessageHandlerTest, OnMessage) {
40 SharingMessage sharing_message;
41 sharing_message.mutable_ack_message()->set_original_message_id(
42 kTestMessageId);
43
44 ack_message_handler_.OnMessage(sharing_message);
45
46 EXPECT_EQ(kTestMessageId, test_observer_.received_message_id());
47}