| Index: components/copresence/handlers/directive_handler_unittest.cc
|
| diff --git a/components/copresence/handlers/directive_handler_unittest.cc b/components/copresence/handlers/directive_handler_unittest.cc
|
| deleted file mode 100644
|
| index 5eae86157606264ced4f7009f9a3e14593e1e489..0000000000000000000000000000000000000000
|
| --- a/components/copresence/handlers/directive_handler_unittest.cc
|
| +++ /dev/null
|
| @@ -1,147 +0,0 @@
|
| -// Copyright 2014 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 <stdint.h>
|
| -
|
| -#include <string>
|
| -#include <vector>
|
| -
|
| -#include "base/bind.h"
|
| -#include "base/memory/ptr_util.h"
|
| -#include "base/time/time.h"
|
| -#include "components/audio_modem/test/stub_whispernet_client.h"
|
| -#include "components/copresence/handlers/audio/audio_directive_handler.h"
|
| -#include "components/copresence/handlers/directive_handler_impl.h"
|
| -#include "components/copresence/proto/data.pb.h"
|
| -#include "testing/gmock/include/gmock/gmock.h"
|
| -
|
| -using testing::ElementsAre;
|
| -using testing::IsEmpty;
|
| -
|
| -namespace {
|
| -
|
| -const int64_t kMaxUnlabeledTtl = 60000; // 1 minute
|
| -const int64_t kExcessiveUnlabeledTtl = 120000; // 2 minutes
|
| -const int64_t kDefaultTtl = 600000; // 10 minutes
|
| -
|
| -} // namespace
|
| -
|
| -namespace copresence {
|
| -
|
| -const Directive CreateDirective(const std::string& publish_id,
|
| - const std::string& subscribe_id,
|
| - const std::string& token,
|
| - int64_t ttl_ms) {
|
| - Directive directive;
|
| - directive.set_instruction_type(TOKEN);
|
| - directive.set_published_message_id(publish_id);
|
| - directive.set_subscription_id(subscribe_id);
|
| - directive.set_ttl_millis(ttl_ms);
|
| -
|
| - TokenInstruction* instruction = new TokenInstruction;
|
| - instruction->set_token_id(token);
|
| - instruction->set_medium(AUDIO_ULTRASOUND_PASSBAND);
|
| - directive.set_allocated_token_instruction(instruction);
|
| -
|
| - return directive;
|
| -}
|
| -
|
| -const Directive CreateDirective(const std::string& publish_id,
|
| - const std::string& subscribe_id,
|
| - const std::string& token) {
|
| - return CreateDirective(publish_id, subscribe_id, token, kDefaultTtl);
|
| -}
|
| -
|
| -class FakeAudioDirectiveHandler final : public AudioDirectiveHandler {
|
| - public:
|
| - FakeAudioDirectiveHandler() {}
|
| -
|
| - void Initialize(
|
| - audio_modem::WhispernetClient* /* whispernet_client */,
|
| - const audio_modem::TokensCallback& /* tokens_cb */) override {}
|
| -
|
| - void AddInstruction(const Directive& directive,
|
| - const std::string& /* op_id */) override {
|
| - added_tokens_.push_back(directive.token_instruction().token_id());
|
| - added_ttls_.push_back(directive.ttl_millis());
|
| - }
|
| -
|
| - void RemoveInstructions(const std::string& op_id) override {
|
| - removed_operations_.push_back(op_id);
|
| - }
|
| -
|
| - const std::string
|
| - PlayingToken(audio_modem::AudioType /* type */) const override {
|
| - NOTREACHED();
|
| - return "";
|
| - }
|
| -
|
| - bool IsPlayingTokenHeard(audio_modem::AudioType /* type */) const override {
|
| - NOTREACHED();
|
| - return false;
|
| - }
|
| -
|
| - const std::vector<std::string>& added_tokens() const {
|
| - return added_tokens_;
|
| - }
|
| -
|
| - const std::vector<int64_t>& added_ttls() const { return added_ttls_; }
|
| -
|
| - const std::vector<std::string>& removed_operations() const {
|
| - return removed_operations_;
|
| - }
|
| -
|
| - private:
|
| - std::vector<std::string> added_tokens_;
|
| - std::vector<int64_t> added_ttls_;
|
| - std::vector<std::string> removed_operations_;
|
| -};
|
| -
|
| -class DirectiveHandlerTest : public testing::Test {
|
| - public:
|
| - DirectiveHandlerTest()
|
| - : whispernet_client_(new audio_modem::StubWhispernetClient),
|
| - audio_handler_(new FakeAudioDirectiveHandler),
|
| - directive_handler_(
|
| - base::WrapUnique<AudioDirectiveHandler>(audio_handler_)) {}
|
| -
|
| - protected:
|
| - void StartDirectiveHandler() {
|
| - directive_handler_.Start(whispernet_client_.get(),
|
| - audio_modem::TokensCallback());
|
| - }
|
| -
|
| - std::unique_ptr<audio_modem::WhispernetClient> whispernet_client_;
|
| - FakeAudioDirectiveHandler* audio_handler_;
|
| - DirectiveHandlerImpl directive_handler_;
|
| -};
|
| -
|
| -TEST_F(DirectiveHandlerTest, DirectiveTtl) {
|
| - StartDirectiveHandler();
|
| - directive_handler_.AddDirective(
|
| - CreateDirective("", "", "token 1", kMaxUnlabeledTtl));
|
| - directive_handler_.AddDirective(
|
| - CreateDirective("", "", "token 2", kExcessiveUnlabeledTtl));
|
| - EXPECT_THAT(audio_handler_->added_ttls(),
|
| - ElementsAre(kMaxUnlabeledTtl, kMaxUnlabeledTtl));
|
| -}
|
| -
|
| -TEST_F(DirectiveHandlerTest, Queuing) {
|
| - directive_handler_.AddDirective(CreateDirective("id 1", "", "token 1"));
|
| - directive_handler_.AddDirective(CreateDirective("", "id 1", "token 2"));
|
| - directive_handler_.AddDirective(CreateDirective("id 2", "", "token 3"));
|
| - directive_handler_.RemoveDirectives("id 1");
|
| -
|
| - EXPECT_THAT(audio_handler_->added_tokens(), IsEmpty());
|
| - EXPECT_THAT(audio_handler_->removed_operations(), IsEmpty());
|
| -
|
| - StartDirectiveHandler();
|
| - directive_handler_.RemoveDirectives("id 3");
|
| -
|
| - EXPECT_THAT(audio_handler_->added_tokens(), ElementsAre("token 3"));
|
| - EXPECT_THAT(audio_handler_->added_ttls(), ElementsAre(kDefaultTtl));
|
| - EXPECT_THAT(audio_handler_->removed_operations(), ElementsAre("id 3"));
|
| -}
|
| -
|
| -} // namespace copresence
|
|
|