120 BEAST_EXPECT(c->update(node,
"", load, tick));
122 auto member = c->member(node);
123 BEAST_EXPECT(
static_cast<bool>(member));
124 BEAST_EXPECT(member->empty());
128 BEAST_EXPECT(!c->update(node, name, load, tick));
130 auto member = c->member(node);
131 BEAST_EXPECT(
static_cast<bool>(member));
132 BEAST_EXPECT(member->empty());
135 using namespace std::chrono_literals;
139 BEAST_EXPECT(c->update(node, name, load, tick));
141 auto member = c->member(node);
142 BEAST_EXPECT(
static_cast<bool>(member));
143 BEAST_EXPECT(member->compare(name) == 0);
148 BEAST_EXPECT(c->update(node,
"", load, tick));
150 auto member = c->member(node);
151 BEAST_EXPECT(
static_cast<bool>(member));
152 BEAST_EXPECT(member->compare(name) == 0);
157 BEAST_EXPECT(c->update(node,
"test", load, tick));
159 auto member = c->member(node);
160 BEAST_EXPECT(
static_cast<bool>(member));
161 BEAST_EXPECT(member->compare(
"test") == 0);
175 while (network.
size() != 8)
178 auto format = [](
PublicKey const& publicKey,
char const* comment =
nullptr) {
190 BEAST_EXPECT(c->load(s1));
191 BEAST_EXPECT(c->size() == 0);
194 s1.
append(format(network[0]));
195 s1.
append(format(network[1],
" "));
196 s1.
append(format(network[2],
" Comment"));
197 s1.
append(format(network[3],
" Multi Word Comment"));
198 s1.
append(format(network[4],
" Leading Whitespace"));
199 s1.
append(format(network[5],
" Trailing Whitespace "));
200 s1.
append(format(network[6],
" Leading & Trailing Whitespace "));
201 s1.
append(format(network[7],
" Leading, Trailing & Internal Whitespace "));
203 BEAST_EXPECT(c->load(s1));
205 for (
auto const& n : network)
206 BEAST_EXPECT(c->member(n));
210 s2.
append(
"NotAPublicKey");
211 BEAST_EXPECT(!c->load(s2));
214 s3.
append(format(network[0],
"!"));
215 BEAST_EXPECT(!c->load(s3));
218 s4.
append(format(network[0],
"! Comment"));
219 BEAST_EXPECT(!c->load(s4));
227 s5.
append(format(node1,
"XXX"));
229 BEAST_EXPECT(!c->load(s5));
230 BEAST_EXPECT(!c->member(node1));
231 BEAST_EXPECT(!c->member(node2));