| 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 | 
|  |