Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(191)

Side by Side Diff: mojo/public/cpp/bindings/tests/router_unittest.cc

Issue 668663006: Standardize usage of virtual/override/final in mojo/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <stdlib.h> 5 #include <stdlib.h>
6 #include <string.h> 6 #include <string.h>
7 7
8 #include "mojo/public/cpp/bindings/lib/message_builder.h" 8 #include "mojo/public/cpp/bindings/lib/message_builder.h"
9 #include "mojo/public/cpp/bindings/lib/message_queue.h" 9 #include "mojo/public/cpp/bindings/lib/message_queue.h"
10 #include "mojo/public/cpp/bindings/lib/router.h" 10 #include "mojo/public/cpp/bindings/lib/router.h"
(...skipping 20 matching lines...) Expand all
31 size_t payload_size = strlen(text) + 1; // Plus null terminator. 31 size_t payload_size = strlen(text) + 1; // Plus null terminator.
32 internal::ResponseMessageBuilder builder(name, payload_size, request_id); 32 internal::ResponseMessageBuilder builder(name, payload_size, request_id);
33 memcpy(builder.buffer()->Allocate(payload_size), text, payload_size); 33 memcpy(builder.buffer()->Allocate(payload_size), text, payload_size);
34 builder.Finish(message); 34 builder.Finish(message);
35 } 35 }
36 36
37 class MessageAccumulator : public MessageReceiver { 37 class MessageAccumulator : public MessageReceiver {
38 public: 38 public:
39 explicit MessageAccumulator(internal::MessageQueue* queue) : queue_(queue) {} 39 explicit MessageAccumulator(internal::MessageQueue* queue) : queue_(queue) {}
40 40
41 virtual bool Accept(Message* message) override { 41 bool Accept(Message* message) override {
42 queue_->Push(message); 42 queue_->Push(message);
43 return true; 43 return true;
44 } 44 }
45 45
46 private: 46 private:
47 internal::MessageQueue* queue_; 47 internal::MessageQueue* queue_;
48 }; 48 };
49 49
50 class ResponseGenerator : public MessageReceiverWithResponder { 50 class ResponseGenerator : public MessageReceiverWithResponder {
51 public: 51 public:
52 ResponseGenerator() {} 52 ResponseGenerator() {}
53 53
54 virtual bool Accept(Message* message) override { return false; } 54 bool Accept(Message* message) override { return false; }
55 55
56 virtual bool AcceptWithResponder(Message* message, 56 bool AcceptWithResponder(Message* message,
57 MessageReceiver* responder) override { 57 MessageReceiver* responder) override {
58 EXPECT_TRUE(message->has_flag(internal::kMessageExpectsResponse)); 58 EXPECT_TRUE(message->has_flag(internal::kMessageExpectsResponse));
59 59
60 return SendResponse(message->name(), message->request_id(), responder); 60 return SendResponse(message->name(), message->request_id(), responder);
61 } 61 }
62 62
63 bool SendResponse(uint32_t name, 63 bool SendResponse(uint32_t name,
64 uint64_t request_id, 64 uint64_t request_id,
65 MessageReceiver* responder) { 65 MessageReceiver* responder) {
66 Message response; 66 Message response;
67 AllocResponseMessage(name, "world", request_id, &response); 67 AllocResponseMessage(name, "world", request_id, &response);
68 68
69 bool result = responder->Accept(&response); 69 bool result = responder->Accept(&response);
70 delete responder; 70 delete responder;
71 return result; 71 return result;
72 } 72 }
73 }; 73 };
74 74
75 class LazyResponseGenerator : public ResponseGenerator { 75 class LazyResponseGenerator : public ResponseGenerator {
76 public: 76 public:
77 LazyResponseGenerator() : responder_(nullptr), name_(0), request_id_(0) {} 77 LazyResponseGenerator() : responder_(nullptr), name_(0), request_id_(0) {}
78 78
79 virtual ~LazyResponseGenerator() { delete responder_; } 79 ~LazyResponseGenerator() override { delete responder_; }
80 80
81 virtual bool AcceptWithResponder(Message* message, 81 bool AcceptWithResponder(Message* message,
82 MessageReceiver* responder) override { 82 MessageReceiver* responder) override {
83 name_ = message->name(); 83 name_ = message->name();
84 request_id_ = message->request_id(); 84 request_id_ = message->request_id();
85 responder_ = responder; 85 responder_ = responder;
86 return true; 86 return true;
87 } 87 }
88 88
89 bool has_responder() const { return !!responder_; } 89 bool has_responder() const { return !!responder_; }
90 90
91 void Complete() { 91 void Complete() {
92 SendResponse(name_, request_id_, responder_); 92 SendResponse(name_, request_id_, responder_);
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
212 212
213 EXPECT_TRUE(generator.has_responder()); 213 EXPECT_TRUE(generator.has_responder());
214 } 214 }
215 215
216 generator.Complete(); // This should end up doing nothing. 216 generator.Complete(); // This should end up doing nothing.
217 } 217 }
218 218
219 } // namespace 219 } // namespace
220 } // namespace test 220 } // namespace test
221 } // namespace mojo 221 } // namespace mojo
OLDNEW
« no previous file with comments | « mojo/public/cpp/bindings/tests/request_response_unittest.cc ('k') | mojo/public/cpp/bindings/tests/sample_service_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698