19TEST(FeeSettingsTests, BuilderSettersRoundTrip)
49 EXPECT_TRUE(builder.validate());
51 auto const entry = builder.build(index);
53 EXPECT_TRUE(entry.validate());
56 auto const& expected = baseFeeValue;
57 auto const actualOpt = entry.getBaseFee();
58 ASSERT_TRUE(actualOpt.has_value());
60 EXPECT_TRUE(entry.hasBaseFee());
64 auto const& expected = referenceFeeUnitsValue;
65 auto const actualOpt = entry.getReferenceFeeUnits();
66 ASSERT_TRUE(actualOpt.has_value());
68 EXPECT_TRUE(entry.hasReferenceFeeUnits());
72 auto const& expected = reserveBaseValue;
73 auto const actualOpt = entry.getReserveBase();
74 ASSERT_TRUE(actualOpt.has_value());
76 EXPECT_TRUE(entry.hasReserveBase());
80 auto const& expected = reserveIncrementValue;
81 auto const actualOpt = entry.getReserveIncrement();
82 ASSERT_TRUE(actualOpt.has_value());
84 EXPECT_TRUE(entry.hasReserveIncrement());
88 auto const& expected = baseFeeDropsValue;
89 auto const actualOpt = entry.getBaseFeeDrops();
90 ASSERT_TRUE(actualOpt.has_value());
92 EXPECT_TRUE(entry.hasBaseFeeDrops());
96 auto const& expected = reserveBaseDropsValue;
97 auto const actualOpt = entry.getReserveBaseDrops();
98 ASSERT_TRUE(actualOpt.has_value());
100 EXPECT_TRUE(entry.hasReserveBaseDrops());
104 auto const& expected = reserveIncrementDropsValue;
105 auto const actualOpt = entry.getReserveIncrementDrops();
106 ASSERT_TRUE(actualOpt.has_value());
108 EXPECT_TRUE(entry.hasReserveIncrementDrops());
112 auto const& expected = previousTxnIDValue;
113 auto const actualOpt = entry.getPreviousTxnID();
114 ASSERT_TRUE(actualOpt.has_value());
116 EXPECT_TRUE(entry.hasPreviousTxnID());
120 auto const& expected = previousTxnLgrSeqValue;
121 auto const actualOpt = entry.getPreviousTxnLgrSeq();
122 ASSERT_TRUE(actualOpt.has_value());
124 EXPECT_TRUE(entry.hasPreviousTxnLgrSeq());
127 EXPECT_TRUE(entry.hasLedgerIndex());
128 auto const ledgerIndex = entry.getLedgerIndex();
129 ASSERT_TRUE(ledgerIndex.has_value());
130 EXPECT_EQ(*ledgerIndex, index);
131 EXPECT_EQ(entry.getKey(), index);
136TEST(FeeSettingsTests, BuilderFromSleRoundTrip)
152 sle->at(sfBaseFee) = baseFeeValue;
153 sle->at(sfReferenceFeeUnits) = referenceFeeUnitsValue;
154 sle->at(sfReserveBase) = reserveBaseValue;
155 sle->at(sfReserveIncrement) = reserveIncrementValue;
156 sle->at(sfBaseFeeDrops) = baseFeeDropsValue;
157 sle->at(sfReserveBaseDrops) = reserveBaseDropsValue;
158 sle->at(sfReserveIncrementDrops) = reserveIncrementDropsValue;
159 sle->at(sfPreviousTxnID) = previousTxnIDValue;
160 sle->at(sfPreviousTxnLgrSeq) = previousTxnLgrSeqValue;
163 EXPECT_TRUE(builderFromSle.validate());
165 auto const entryFromBuilder = builderFromSle.build(index);
168 EXPECT_TRUE(entryFromBuilder.validate());
169 EXPECT_TRUE(entryFromSle.validate());
172 auto const& expected = baseFeeValue;
174 auto const fromSleOpt = entryFromSle.getBaseFee();
175 auto const fromBuilderOpt = entryFromBuilder.getBaseFee();
177 ASSERT_TRUE(fromSleOpt.has_value());
178 ASSERT_TRUE(fromBuilderOpt.has_value());
185 auto const& expected = referenceFeeUnitsValue;
187 auto const fromSleOpt = entryFromSle.getReferenceFeeUnits();
188 auto const fromBuilderOpt = entryFromBuilder.getReferenceFeeUnits();
190 ASSERT_TRUE(fromSleOpt.has_value());
191 ASSERT_TRUE(fromBuilderOpt.has_value());
198 auto const& expected = reserveBaseValue;
200 auto const fromSleOpt = entryFromSle.getReserveBase();
201 auto const fromBuilderOpt = entryFromBuilder.getReserveBase();
203 ASSERT_TRUE(fromSleOpt.has_value());
204 ASSERT_TRUE(fromBuilderOpt.has_value());
211 auto const& expected = reserveIncrementValue;
213 auto const fromSleOpt = entryFromSle.getReserveIncrement();
214 auto const fromBuilderOpt = entryFromBuilder.getReserveIncrement();
216 ASSERT_TRUE(fromSleOpt.has_value());
217 ASSERT_TRUE(fromBuilderOpt.has_value());
224 auto const& expected = baseFeeDropsValue;
226 auto const fromSleOpt = entryFromSle.getBaseFeeDrops();
227 auto const fromBuilderOpt = entryFromBuilder.getBaseFeeDrops();
229 ASSERT_TRUE(fromSleOpt.has_value());
230 ASSERT_TRUE(fromBuilderOpt.has_value());
237 auto const& expected = reserveBaseDropsValue;
239 auto const fromSleOpt = entryFromSle.getReserveBaseDrops();
240 auto const fromBuilderOpt = entryFromBuilder.getReserveBaseDrops();
242 ASSERT_TRUE(fromSleOpt.has_value());
243 ASSERT_TRUE(fromBuilderOpt.has_value());
250 auto const& expected = reserveIncrementDropsValue;
252 auto const fromSleOpt = entryFromSle.getReserveIncrementDrops();
253 auto const fromBuilderOpt = entryFromBuilder.getReserveIncrementDrops();
255 ASSERT_TRUE(fromSleOpt.has_value());
256 ASSERT_TRUE(fromBuilderOpt.has_value());
263 auto const& expected = previousTxnIDValue;
265 auto const fromSleOpt = entryFromSle.getPreviousTxnID();
266 auto const fromBuilderOpt = entryFromBuilder.getPreviousTxnID();
268 ASSERT_TRUE(fromSleOpt.has_value());
269 ASSERT_TRUE(fromBuilderOpt.has_value());
276 auto const& expected = previousTxnLgrSeqValue;
278 auto const fromSleOpt = entryFromSle.getPreviousTxnLgrSeq();
279 auto const fromBuilderOpt = entryFromBuilder.getPreviousTxnLgrSeq();
281 ASSERT_TRUE(fromSleOpt.has_value());
282 ASSERT_TRUE(fromBuilderOpt.has_value());
288 EXPECT_EQ(entryFromSle.getKey(), index);
289 EXPECT_EQ(entryFromBuilder.getKey(), index);
329TEST(FeeSettingsTests, OptionalFieldsReturnNullopt)
337 auto const entry = builder.build(index);
340 EXPECT_FALSE(entry.hasBaseFee());
341 EXPECT_FALSE(entry.getBaseFee().has_value());
342 EXPECT_FALSE(entry.hasReferenceFeeUnits());
343 EXPECT_FALSE(entry.getReferenceFeeUnits().has_value());
344 EXPECT_FALSE(entry.hasReserveBase());
345 EXPECT_FALSE(entry.getReserveBase().has_value());
346 EXPECT_FALSE(entry.hasReserveIncrement());
347 EXPECT_FALSE(entry.getReserveIncrement().has_value());
348 EXPECT_FALSE(entry.hasBaseFeeDrops());
349 EXPECT_FALSE(entry.getBaseFeeDrops().has_value());
350 EXPECT_FALSE(entry.hasReserveBaseDrops());
351 EXPECT_FALSE(entry.getReserveBaseDrops().has_value());
352 EXPECT_FALSE(entry.hasReserveIncrementDrops());
353 EXPECT_FALSE(entry.getReserveIncrementDrops().has_value());
354 EXPECT_FALSE(entry.hasPreviousTxnID());
355 EXPECT_FALSE(entry.getPreviousTxnID().has_value());
356 EXPECT_FALSE(entry.hasPreviousTxnLgrSeq());
357 EXPECT_FALSE(entry.getPreviousTxnLgrSeq().has_value());
std::shared_ptr< SLE const > getSle() const
Get the underlying SLE object.