// 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 #include #include namespace buzz { class XmlElement; } // namespace buzz namespace remoting { extern const char kJabberClientNamespace[]; extern const char kChromotingNamespace[]; // Verifies that |stanza| contains a element and returns it. Otherwise // returns nullptr and records a test failure. buzz::XmlElement* GetLogElementFromStanza(buzz::XmlElement* stanza); // Verifies that |stanza| contains only 1 log entry, and returns the // element. Otherwise returns nullptr and records a test failure. buzz::XmlElement* GetSingleLogEntryFromStanza(buzz::XmlElement* stanza); // Verifies a logging stanza. // |keyValuePairs| lists the keys that must have specified values, and |keys| // lists the keys that must be present, but may have arbitrary values. // There must be no other keys. bool VerifyStanza( const std::map& key_value_pairs, const std::set keys, const buzz::XmlElement* elem, std::string* error); } // namespace remoting