130 BEAST_EXPECT(c->update(node,
"", load, tick));
132 auto member = c->member(node);
133 BEAST_EXPECT(
static_cast<bool>(member));
134 BEAST_EXPECT(member->empty());
138 BEAST_EXPECT(!c->update(node, name, load, tick));
140 auto member = c->member(node);
141 BEAST_EXPECT(
static_cast<bool>(member));
142 BEAST_EXPECT(member->empty());
145 using namespace std::chrono_literals;
149 BEAST_EXPECT(c->update(node, name, load, tick));
151 auto member = c->member(node);
152 BEAST_EXPECT(
static_cast<bool>(member));
153 BEAST_EXPECT(member->compare(name) == 0);
158 BEAST_EXPECT(c->update(node,
"", load, tick));
160 auto member = c->member(node);
161 BEAST_EXPECT(
static_cast<bool>(member));
162 BEAST_EXPECT(member->compare(name) == 0);
167 BEAST_EXPECT(c->update(node,
"test", load, tick));
169 auto member = c->member(node);
170 BEAST_EXPECT(
static_cast<bool>(member));
172 member->compare(
"test") == 0);
186 while (network.
size() != 8)
189 auto format = [](
PublicKey const& publicKey,
char const* comment =
nullptr) {
201 BEAST_EXPECT(c->load(s1));
202 BEAST_EXPECT(c->size() == 0);
205 s1.
append(format(network[0]));
206 s1.
append(format(network[1],
" "));
207 s1.
append(format(network[2],
" Comment"));
208 s1.
append(format(network[3],
" Multi Word Comment"));
209 s1.
append(format(network[4],
" Leading Whitespace"));
210 s1.
append(format(network[5],
" Trailing Whitespace "));
211 s1.
append(format(network[6],
" Leading & Trailing Whitespace "));
212 s1.
append(format(network[7],
" Leading, Trailing & Internal Whitespace "));
214 BEAST_EXPECT(c->load(s1));
216 for (
auto const& n : network)
217 BEAST_EXPECT(c->member(n));
221 s2.
append(
"NotAPublicKey");
222 BEAST_EXPECT(!c->load(s2));
225 s3.
append(format(network[0],
"!"));
226 BEAST_EXPECT(!c->load(s3));
229 s4.
append(format(network[0],
"! Comment"));
230 BEAST_EXPECT(!c->load(s4));
238 s5.
append(format(node1,
"XXX"));
240 BEAST_EXPECT(!c->load(s5));
241 BEAST_EXPECT(!c->member(node1));
242 BEAST_EXPECT(!c->member(node2));