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

Side by Side Diff: mojo/public/c/system/tests/core_unittest.cc

Issue 469393002: Mojo: clang-format mojo/public/c/... and add a presubmit check. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 4 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 // This file tests the C API. 5 // This file tests the C API.
6 6
7 #include "mojo/public/c/system/core.h" 7 #include "mojo/public/c/system/core.h"
8 8
9 #include <string.h> 9 #include <string.h>
10 10
11 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
12 12
13 namespace mojo { 13 namespace mojo {
14 namespace { 14 namespace {
15 15
16 TEST(CoreTest, GetTimeTicksNow) { 16 TEST(CoreTest, GetTimeTicksNow) {
17 const MojoTimeTicks start = MojoGetTimeTicksNow(); 17 const MojoTimeTicks start = MojoGetTimeTicksNow();
18 EXPECT_NE(static_cast<MojoTimeTicks>(0), start) 18 EXPECT_NE(static_cast<MojoTimeTicks>(0), start)
19 << "MojoGetTimeTicksNow should return nonzero value"; 19 << "MojoGetTimeTicksNow should return nonzero value";
20 } 20 }
21 21
22 // The only handle that's guaranteed to be invalid is |MOJO_HANDLE_INVALID|. 22 // The only handle that's guaranteed to be invalid is |MOJO_HANDLE_INVALID|.
23 // Tests that everything that takes a handle properly recognizes it. 23 // Tests that everything that takes a handle properly recognizes it.
24 TEST(CoreTest, InvalidHandle) { 24 TEST(CoreTest, InvalidHandle) {
25 MojoHandle h0, h1; 25 MojoHandle h0, h1;
26 MojoHandleSignals sig; 26 MojoHandleSignals sig;
27 char buffer[10] = { 0 }; 27 char buffer[10] = {0};
28 uint32_t buffer_size; 28 uint32_t buffer_size;
29 void* write_pointer; 29 void* write_pointer;
30 const void* read_pointer; 30 const void* read_pointer;
31 31
32 // Close: 32 // Close:
33 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, MojoClose(MOJO_HANDLE_INVALID)); 33 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, MojoClose(MOJO_HANDLE_INVALID));
34 34
35 // Wait: 35 // Wait:
36 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, 36 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT,
37 MojoWait(MOJO_HANDLE_INVALID, ~MOJO_HANDLE_SIGNAL_NONE, 1000000)); 37 MojoWait(MOJO_HANDLE_INVALID, ~MOJO_HANDLE_SIGNAL_NONE, 1000000));
38 h0 = MOJO_HANDLE_INVALID; 38 h0 = MOJO_HANDLE_INVALID;
39 sig = ~MOJO_HANDLE_SIGNAL_NONE; 39 sig = ~MOJO_HANDLE_SIGNAL_NONE;
40 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, 40 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT,
41 MojoWaitMany(&h0, &sig, 1, MOJO_DEADLINE_INDEFINITE)); 41 MojoWaitMany(&h0, &sig, 1, MOJO_DEADLINE_INDEFINITE));
42 42
43 // Message pipe: 43 // Message pipe:
44 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, 44 EXPECT_EQ(
45 MojoWriteMessage(h0, buffer, 3, NULL, 0, 45 MOJO_RESULT_INVALID_ARGUMENT,
46 MOJO_WRITE_MESSAGE_FLAG_NONE)); 46 MojoWriteMessage(h0, buffer, 3, NULL, 0, MOJO_WRITE_MESSAGE_FLAG_NONE));
47 buffer_size = static_cast<uint32_t>(sizeof(buffer)); 47 buffer_size = static_cast<uint32_t>(sizeof(buffer));
48 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, 48 EXPECT_EQ(
49 MojoReadMessage(h0, buffer, &buffer_size, NULL, NULL, 49 MOJO_RESULT_INVALID_ARGUMENT,
50 MOJO_READ_MESSAGE_FLAG_NONE)); 50 MojoReadMessage(
51 h0, buffer, &buffer_size, NULL, NULL, MOJO_READ_MESSAGE_FLAG_NONE));
51 52
52 // Data pipe: 53 // Data pipe:
53 buffer_size = static_cast<uint32_t>(sizeof(buffer)); 54 buffer_size = static_cast<uint32_t>(sizeof(buffer));
54 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, 55 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT,
55 MojoWriteData(h0, buffer, &buffer_size, MOJO_WRITE_DATA_FLAG_NONE)); 56 MojoWriteData(h0, buffer, &buffer_size, MOJO_WRITE_DATA_FLAG_NONE));
56 write_pointer = NULL; 57 write_pointer = NULL;
57 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, 58 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT,
58 MojoBeginWriteData(h0, &write_pointer, &buffer_size, 59 MojoBeginWriteData(
59 MOJO_WRITE_DATA_FLAG_NONE)); 60 h0, &write_pointer, &buffer_size, MOJO_WRITE_DATA_FLAG_NONE));
60 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, MojoEndWriteData(h0, 1)); 61 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, MojoEndWriteData(h0, 1));
61 buffer_size = static_cast<uint32_t>(sizeof(buffer)); 62 buffer_size = static_cast<uint32_t>(sizeof(buffer));
62 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, 63 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT,
63 MojoReadData(h0, buffer, &buffer_size, MOJO_READ_DATA_FLAG_NONE)); 64 MojoReadData(h0, buffer, &buffer_size, MOJO_READ_DATA_FLAG_NONE));
64 read_pointer = NULL; 65 read_pointer = NULL;
65 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, 66 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT,
66 MojoBeginReadData(h0, &read_pointer, &buffer_size, 67 MojoBeginReadData(
67 MOJO_READ_DATA_FLAG_NONE)); 68 h0, &read_pointer, &buffer_size, MOJO_READ_DATA_FLAG_NONE));
68 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, MojoEndReadData(h0, 1)); 69 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, MojoEndReadData(h0, 1));
69 70
70 // Shared buffer: 71 // Shared buffer:
71 h1 = MOJO_HANDLE_INVALID; 72 h1 = MOJO_HANDLE_INVALID;
72 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, 73 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT,
73 MojoDuplicateBufferHandle(h0, NULL, &h1)); 74 MojoDuplicateBufferHandle(h0, NULL, &h1));
74 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT, 75 EXPECT_EQ(MOJO_RESULT_INVALID_ARGUMENT,
75 MojoMapBuffer(h0, 0, 1, &write_pointer, MOJO_MAP_BUFFER_FLAG_NONE)); 76 MojoMapBuffer(h0, 0, 1, &write_pointer, MOJO_MAP_BUFFER_FLAG_NONE));
76 } 77 }
77 78
78 TEST(CoreTest, BasicMessagePipe) { 79 TEST(CoreTest, BasicMessagePipe) {
79 MojoHandle h0, h1; 80 MojoHandle h0, h1;
80 MojoHandleSignals sig; 81 MojoHandleSignals sig;
81 char buffer[10] = { 0 }; 82 char buffer[10] = {0};
82 uint32_t buffer_size; 83 uint32_t buffer_size;
83 84
84 h0 = MOJO_HANDLE_INVALID; 85 h0 = MOJO_HANDLE_INVALID;
85 h1 = MOJO_HANDLE_INVALID; 86 h1 = MOJO_HANDLE_INVALID;
86 EXPECT_EQ(MOJO_RESULT_OK, MojoCreateMessagePipe(NULL, &h0, &h1)); 87 EXPECT_EQ(MOJO_RESULT_OK, MojoCreateMessagePipe(NULL, &h0, &h1));
87 EXPECT_NE(h0, MOJO_HANDLE_INVALID); 88 EXPECT_NE(h0, MOJO_HANDLE_INVALID);
88 EXPECT_NE(h1, MOJO_HANDLE_INVALID); 89 EXPECT_NE(h1, MOJO_HANDLE_INVALID);
89 90
90 // Shouldn't be readable. 91 // Shouldn't be readable.
91 EXPECT_EQ(MOJO_RESULT_DEADLINE_EXCEEDED, 92 EXPECT_EQ(MOJO_RESULT_DEADLINE_EXCEEDED,
92 MojoWait(h0, MOJO_HANDLE_SIGNAL_READABLE, 0)); 93 MojoWait(h0, MOJO_HANDLE_SIGNAL_READABLE, 0));
93 94
94 // Should be writable. 95 // Should be writable.
95 EXPECT_EQ(MOJO_RESULT_OK, MojoWait(h0, MOJO_HANDLE_SIGNAL_WRITABLE, 0)); 96 EXPECT_EQ(MOJO_RESULT_OK, MojoWait(h0, MOJO_HANDLE_SIGNAL_WRITABLE, 0));
96 97
97 // Try to read. 98 // Try to read.
98 buffer_size = static_cast<uint32_t>(sizeof(buffer)); 99 buffer_size = static_cast<uint32_t>(sizeof(buffer));
99 EXPECT_EQ(MOJO_RESULT_SHOULD_WAIT, 100 EXPECT_EQ(
100 MojoReadMessage(h0, buffer, &buffer_size, NULL, NULL, 101 MOJO_RESULT_SHOULD_WAIT,
101 MOJO_READ_MESSAGE_FLAG_NONE)); 102 MojoReadMessage(
103 h0, buffer, &buffer_size, NULL, NULL, MOJO_READ_MESSAGE_FLAG_NONE));
102 104
103 // Write to |h1|. 105 // Write to |h1|.
104 static const char kHello[] = "hello"; 106 static const char kHello[] = "hello";
105 buffer_size = static_cast<uint32_t>(sizeof(kHello)); 107 buffer_size = static_cast<uint32_t>(sizeof(kHello));
106 EXPECT_EQ(MOJO_RESULT_OK, 108 EXPECT_EQ(
107 MojoWriteMessage(h1, kHello, buffer_size, NULL, 0, 109 MOJO_RESULT_OK,
108 MOJO_WRITE_MESSAGE_FLAG_NONE)); 110 MojoWriteMessage(
111 h1, kHello, buffer_size, NULL, 0, MOJO_WRITE_MESSAGE_FLAG_NONE));
109 112
110 // |h0| should be readable. 113 // |h0| should be readable.
111 sig = MOJO_HANDLE_SIGNAL_READABLE; 114 sig = MOJO_HANDLE_SIGNAL_READABLE;
112 EXPECT_EQ(MOJO_RESULT_OK, 115 EXPECT_EQ(MOJO_RESULT_OK,
113 MojoWaitMany(&h0, &sig, 1, MOJO_DEADLINE_INDEFINITE)); 116 MojoWaitMany(&h0, &sig, 1, MOJO_DEADLINE_INDEFINITE));
114 117
115 // Read from |h0|. 118 // Read from |h0|.
116 buffer_size = static_cast<uint32_t>(sizeof(buffer)); 119 buffer_size = static_cast<uint32_t>(sizeof(buffer));
117 EXPECT_EQ(MOJO_RESULT_OK, 120 EXPECT_EQ(
118 MojoReadMessage(h0, buffer, &buffer_size, NULL, NULL, 121 MOJO_RESULT_OK,
119 MOJO_READ_MESSAGE_FLAG_NONE)); 122 MojoReadMessage(
123 h0, buffer, &buffer_size, NULL, NULL, MOJO_READ_MESSAGE_FLAG_NONE));
120 EXPECT_EQ(static_cast<uint32_t>(sizeof(kHello)), buffer_size); 124 EXPECT_EQ(static_cast<uint32_t>(sizeof(kHello)), buffer_size);
121 EXPECT_STREQ(kHello, buffer); 125 EXPECT_STREQ(kHello, buffer);
122 126
123 // |h0| should no longer be readable. 127 // |h0| should no longer be readable.
124 EXPECT_EQ(MOJO_RESULT_DEADLINE_EXCEEDED, 128 EXPECT_EQ(MOJO_RESULT_DEADLINE_EXCEEDED,
125 MojoWait(h0, MOJO_HANDLE_SIGNAL_READABLE, 10)); 129 MojoWait(h0, MOJO_HANDLE_SIGNAL_READABLE, 10));
126 130
127 // Close |h0|. 131 // Close |h0|.
128 EXPECT_EQ(MOJO_RESULT_OK, MojoClose(h0)); 132 EXPECT_EQ(MOJO_RESULT_OK, MojoClose(h0));
129 133
130 // |h1| should no longer be readable or writable. 134 // |h1| should no longer be readable or writable.
131 EXPECT_EQ(MOJO_RESULT_FAILED_PRECONDITION, 135 EXPECT_EQ(
132 MojoWait(h1, 136 MOJO_RESULT_FAILED_PRECONDITION,
133 MOJO_HANDLE_SIGNAL_READABLE | MOJO_HANDLE_SIGNAL_WRITABLE, 137 MojoWait(
134 1000)); 138 h1, MOJO_HANDLE_SIGNAL_READABLE | MOJO_HANDLE_SIGNAL_WRITABLE, 1000));
135 139
136 EXPECT_EQ(MOJO_RESULT_OK, MojoClose(h1)); 140 EXPECT_EQ(MOJO_RESULT_OK, MojoClose(h1));
137 } 141 }
138 142
139 TEST(CoreTest, BasicDataPipe) { 143 TEST(CoreTest, BasicDataPipe) {
140 MojoHandle hp, hc; 144 MojoHandle hp, hc;
141 MojoHandleSignals sig; 145 MojoHandleSignals sig;
142 char buffer[20] = { 0 }; 146 char buffer[20] = {0};
143 uint32_t buffer_size; 147 uint32_t buffer_size;
144 void* write_pointer; 148 void* write_pointer;
145 const void* read_pointer; 149 const void* read_pointer;
146 150
147 hp = MOJO_HANDLE_INVALID; 151 hp = MOJO_HANDLE_INVALID;
148 hc = MOJO_HANDLE_INVALID; 152 hc = MOJO_HANDLE_INVALID;
149 EXPECT_EQ(MOJO_RESULT_OK, MojoCreateDataPipe(NULL, &hp, &hc)); 153 EXPECT_EQ(MOJO_RESULT_OK, MojoCreateDataPipe(NULL, &hp, &hc));
150 EXPECT_NE(hp, MOJO_HANDLE_INVALID); 154 EXPECT_NE(hp, MOJO_HANDLE_INVALID);
151 EXPECT_NE(hc, MOJO_HANDLE_INVALID); 155 EXPECT_NE(hc, MOJO_HANDLE_INVALID);
152 156
153 // The consumer |hc| shouldn't be readable. 157 // The consumer |hc| shouldn't be readable.
154 EXPECT_EQ(MOJO_RESULT_DEADLINE_EXCEEDED, 158 EXPECT_EQ(MOJO_RESULT_DEADLINE_EXCEEDED,
155 MojoWait(hc, MOJO_HANDLE_SIGNAL_READABLE, 0)); 159 MojoWait(hc, MOJO_HANDLE_SIGNAL_READABLE, 0));
156 160
157 // The producer |hp| should be writable. 161 // The producer |hp| should be writable.
158 EXPECT_EQ(MOJO_RESULT_OK, MojoWait(hp, MOJO_HANDLE_SIGNAL_WRITABLE, 0)); 162 EXPECT_EQ(MOJO_RESULT_OK, MojoWait(hp, MOJO_HANDLE_SIGNAL_WRITABLE, 0));
159 163
160 // Try to read from |hc|. 164 // Try to read from |hc|.
161 buffer_size = static_cast<uint32_t>(sizeof(buffer)); 165 buffer_size = static_cast<uint32_t>(sizeof(buffer));
162 EXPECT_EQ(MOJO_RESULT_SHOULD_WAIT, 166 EXPECT_EQ(MOJO_RESULT_SHOULD_WAIT,
163 MojoReadData(hc, buffer, &buffer_size, MOJO_READ_DATA_FLAG_NONE)); 167 MojoReadData(hc, buffer, &buffer_size, MOJO_READ_DATA_FLAG_NONE));
164 168
165 // Try to begin a two-phase read from |hc|. 169 // Try to begin a two-phase read from |hc|.
166 read_pointer = NULL; 170 read_pointer = NULL;
167 EXPECT_EQ(MOJO_RESULT_SHOULD_WAIT, 171 EXPECT_EQ(MOJO_RESULT_SHOULD_WAIT,
168 MojoBeginReadData(hc, &read_pointer, &buffer_size, 172 MojoBeginReadData(
169 MOJO_READ_DATA_FLAG_NONE)); 173 hc, &read_pointer, &buffer_size, MOJO_READ_DATA_FLAG_NONE));
170 174
171 // Write to |hp|. 175 // Write to |hp|.
172 static const char kHello[] = "hello "; 176 static const char kHello[] = "hello ";
173 // Don't include terminating null. 177 // Don't include terminating null.
174 buffer_size = static_cast<uint32_t>(strlen(kHello)); 178 buffer_size = static_cast<uint32_t>(strlen(kHello));
175 EXPECT_EQ(MOJO_RESULT_OK, 179 EXPECT_EQ(
176 MojoWriteData(hp, kHello, &buffer_size, 180 MOJO_RESULT_OK,
177 MOJO_WRITE_MESSAGE_FLAG_NONE)); 181 MojoWriteData(hp, kHello, &buffer_size, MOJO_WRITE_MESSAGE_FLAG_NONE));
178 182
179 // |hc| should be(come) readable. 183 // |hc| should be(come) readable.
180 sig = MOJO_HANDLE_SIGNAL_READABLE; 184 sig = MOJO_HANDLE_SIGNAL_READABLE;
181 EXPECT_EQ(MOJO_RESULT_OK, 185 EXPECT_EQ(MOJO_RESULT_OK,
182 MojoWaitMany(&hc, &sig, 1, MOJO_DEADLINE_INDEFINITE)); 186 MojoWaitMany(&hc, &sig, 1, MOJO_DEADLINE_INDEFINITE));
183 187
184 // Do a two-phase write to |hp|. 188 // Do a two-phase write to |hp|.
185 EXPECT_EQ(MOJO_RESULT_OK, 189 EXPECT_EQ(MOJO_RESULT_OK,
186 MojoBeginWriteData(hp, &write_pointer, &buffer_size, 190 MojoBeginWriteData(
187 MOJO_WRITE_DATA_FLAG_NONE)); 191 hp, &write_pointer, &buffer_size, MOJO_WRITE_DATA_FLAG_NONE));
188 static const char kWorld[] = "world"; 192 static const char kWorld[] = "world";
189 ASSERT_GE(buffer_size, sizeof(kWorld)); 193 ASSERT_GE(buffer_size, sizeof(kWorld));
190 // Include the terminating null. 194 // Include the terminating null.
191 memcpy(write_pointer, kWorld, sizeof(kWorld)); 195 memcpy(write_pointer, kWorld, sizeof(kWorld));
192 EXPECT_EQ(MOJO_RESULT_OK, 196 EXPECT_EQ(MOJO_RESULT_OK,
193 MojoEndWriteData(hp, static_cast<uint32_t>(sizeof(kWorld)))); 197 MojoEndWriteData(hp, static_cast<uint32_t>(sizeof(kWorld))));
194 198
195 // Read one character from |hc|. 199 // Read one character from |hc|.
196 memset(buffer, 0, sizeof(buffer)); 200 memset(buffer, 0, sizeof(buffer));
197 buffer_size = 1; 201 buffer_size = 1;
198 EXPECT_EQ(MOJO_RESULT_OK, 202 EXPECT_EQ(MOJO_RESULT_OK,
199 MojoReadData(hc, buffer, &buffer_size, MOJO_READ_DATA_FLAG_NONE)); 203 MojoReadData(hc, buffer, &buffer_size, MOJO_READ_DATA_FLAG_NONE));
200 204
201 // Close |hp|. 205 // Close |hp|.
202 EXPECT_EQ(MOJO_RESULT_OK, MojoClose(hp)); 206 EXPECT_EQ(MOJO_RESULT_OK, MojoClose(hp));
203 207
204 // |hc| should still be readable. 208 // |hc| should still be readable.
205 EXPECT_EQ(MOJO_RESULT_OK, MojoWait(hc, MOJO_HANDLE_SIGNAL_READABLE, 0)); 209 EXPECT_EQ(MOJO_RESULT_OK, MojoWait(hc, MOJO_HANDLE_SIGNAL_READABLE, 0));
206 210
207 // Do a two-phase read from |hc|. 211 // Do a two-phase read from |hc|.
208 read_pointer = NULL; 212 read_pointer = NULL;
209 EXPECT_EQ(MOJO_RESULT_OK, 213 EXPECT_EQ(MOJO_RESULT_OK,
210 MojoBeginReadData(hc, &read_pointer, &buffer_size, 214 MojoBeginReadData(
211 MOJO_READ_DATA_FLAG_NONE)); 215 hc, &read_pointer, &buffer_size, MOJO_READ_DATA_FLAG_NONE));
212 ASSERT_LE(buffer_size, sizeof(buffer) - 1); 216 ASSERT_LE(buffer_size, sizeof(buffer) - 1);
213 memcpy(&buffer[1], read_pointer, buffer_size); 217 memcpy(&buffer[1], read_pointer, buffer_size);
214 EXPECT_EQ(MOJO_RESULT_OK, MojoEndReadData(hc, buffer_size)); 218 EXPECT_EQ(MOJO_RESULT_OK, MojoEndReadData(hc, buffer_size));
215 EXPECT_STREQ("hello world", buffer); 219 EXPECT_STREQ("hello world", buffer);
216 220
217 // |hc| should no longer be readable. 221 // |hc| should no longer be readable.
218 EXPECT_EQ(MOJO_RESULT_FAILED_PRECONDITION, 222 EXPECT_EQ(MOJO_RESULT_FAILED_PRECONDITION,
219 MojoWait(hc, MOJO_HANDLE_SIGNAL_READABLE, 1000)); 223 MojoWait(hc, MOJO_HANDLE_SIGNAL_READABLE, 1000));
220 224
221 EXPECT_EQ(MOJO_RESULT_OK, MojoClose(hc)); 225 EXPECT_EQ(MOJO_RESULT_OK, MojoClose(hc));
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
276 // This checks that things actually work in C (not C++). 280 // This checks that things actually work in C (not C++).
277 TEST(CoreTest, MinimalCTest) { 281 TEST(CoreTest, MinimalCTest) {
278 const char* failure = MinimalCTest(); 282 const char* failure = MinimalCTest();
279 EXPECT_TRUE(failure == NULL) << failure; 283 EXPECT_TRUE(failure == NULL) << failure;
280 } 284 }
281 285
282 // TODO(vtl): Add multi-threaded tests. 286 // TODO(vtl): Add multi-threaded tests.
283 287
284 } // namespace 288 } // namespace
285 } // namespace mojo 289 } // namespace mojo
OLDNEW
« no previous file with comments | « mojo/public/c/system/tests/core_perftest.cc ('k') | mojo/public/c/system/tests/core_unittest_pure_c.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698