MCPcopy Create free account
hub / github.com/comaps/comaps / UNIT_TEST

Function UNIT_TEST

libs/base/base_tests/observer_list_test.cpp:24–68  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

22} // namespace
23
24UNIT_TEST(ObserverList_Basic)
25{
26 Observer observer0;
27 Observer observer1;
28 Observer observer2;
29
30 base::ObserverListSafe<Observer> observers;
31
32 // Register all observers in a list. Also check that it's not
33 // possible to add the same observer twice.
34 TEST(observers.Add(observer0), ());
35 TEST(!observers.Add(observer0), ());
36
37 TEST(observers.Add(observer1), ());
38 TEST(!observers.Add(observer1), ());
39
40 TEST(observers.Add(observer2), ());
41 TEST(!observers.Add(observer2), ());
42
43 TEST(!observers.Add(observer1), ());
44 TEST(!observers.Add(observer2), ());
45
46 std::string const message = "HTTP OK";
47 observers.ForEach(&Observer::OnOperationCompleted, message, 204);
48
49 // Check observers internal state.
50 TEST_EQUAL(message, observer0.message, ());
51 TEST_EQUAL(204, observer0.status, ());
52
53 TEST_EQUAL(message, observer1.message, ());
54 TEST_EQUAL(204, observer1.status, ());
55
56 TEST_EQUAL(message, observer2.message, ());
57 TEST_EQUAL(204, observer2.status, ());
58
59 // Remove all observers from a list.
60 TEST(observers.Remove(observer0), ());
61 TEST(!observers.Remove(observer0), ());
62
63 TEST(observers.Remove(observer1), ());
64 TEST(!observers.Remove(observer1), ());
65
66 TEST(observers.Remove(observer2), ());
67 TEST(!observers.Remove(observer2), ());
68}

Callers

nothing calls this directly

Calls 4

TESTFunction · 0.85
AddMethod · 0.45
ForEachMethod · 0.45
RemoveMethod · 0.45

Tested by

no test coverage detected