mock_mdns_client.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. // Copyright 2018 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. #ifndef NET_DNS_MOCK_MDNS_CLIENT_H_
  5. #define NET_DNS_MOCK_MDNS_CLIENT_H_
  6. #include <memory>
  7. #include <string>
  8. #include "net/dns/mdns_client.h"
  9. #include "testing/gmock/include/gmock/gmock.h"
  10. namespace net {
  11. class MockMDnsTransaction : public MDnsTransaction {
  12. public:
  13. MockMDnsTransaction();
  14. ~MockMDnsTransaction() override;
  15. MOCK_METHOD0(Start, bool());
  16. MOCK_CONST_METHOD0(GetName, const std::string&());
  17. MOCK_CONST_METHOD0(GetType, uint16_t());
  18. };
  19. class MockMDnsClient : public MDnsClient {
  20. public:
  21. MockMDnsClient();
  22. ~MockMDnsClient() override;
  23. MOCK_METHOD3(CreateListener,
  24. std::unique_ptr<MDnsListener>(uint16_t,
  25. const std::string&,
  26. MDnsListener::Delegate*));
  27. MOCK_METHOD4(
  28. CreateTransaction,
  29. std::unique_ptr<MDnsTransaction>(uint16_t,
  30. const std::string&,
  31. int,
  32. const MDnsTransaction::ResultCallback&));
  33. MOCK_METHOD1(StartListening, int(MDnsSocketFactory*));
  34. MOCK_METHOD0(StopListening, void());
  35. MOCK_CONST_METHOD0(IsListening, bool());
  36. };
  37. } // namespace net
  38. #endif // NET_DNS_MOCK_MDNS_CLIENT_H_