1cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 2cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// found in the LICENSE file. 4cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 5cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#include "ipc/ipc_message_macros.h" 6cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 7cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Singly-included section for enums and custom IPC traits. 8cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#ifndef IPC_CHANNEL_PROXY_UNITTEST_MESSAGES_H_ 9cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#define IPC_CHANNEL_PROXY_UNITTEST_MESSAGES_H_ 10cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 11cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)class BadType { 12cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) public: 13cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) BadType() {} 14cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)}; 15cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 16cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)namespace IPC { 17cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 18cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)template <> 19cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)struct ParamTraits<BadType> { 20cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) static void Write(Message* m, const BadType& p) {} 21cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) static bool Read(const Message* m, PickleIterator* iter, BadType* r) { 22cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) return false; 23cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) } 24cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) static void Log(const BadType& p, std::string* l) {} 25cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)}; 26cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 27cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)} 28cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 29cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#endif // IPC_CHANNEL_PROXY_UNITTEST_MESSAGES_H_ 30cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 31cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 32cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#define IPC_MESSAGE_START TestMsgStart 33cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)IPC_MESSAGE_CONTROL0(TestMsg_Bounce) 34cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)IPC_MESSAGE_CONTROL0(TestMsg_SendBadMessage) 35cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)IPC_MESSAGE_CONTROL1(TestMsg_BadMessage, BadType) 36cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 37cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#undef IPC_MESSAGE_START 38cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#define IPC_MESSAGE_START UtilityMsgStart 39cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)IPC_MESSAGE_CONTROL0(UtilityMsg_Bounce) 40cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 41cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#undef IPC_MESSAGE_START 42cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#define IPC_MESSAGE_START WorkerMsgStart 43cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)IPC_MESSAGE_CONTROL0(WorkerMsg_Bounce) 44cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)IPC_MESSAGE_CONTROL0(WorkerMsg_Quit) 45