19TEST(AmendmentsTests, BuilderSettersRoundTrip)
39 EXPECT_TRUE(builder.validate());
41 auto const entry = builder.build(index);
43 EXPECT_TRUE(entry.validate());
46 auto const& expected = amendmentsValue;
47 auto const actualOpt = entry.getAmendments();
48 ASSERT_TRUE(actualOpt.has_value());
50 EXPECT_TRUE(entry.hasAmendments());
54 auto const& expected = majoritiesValue;
55 auto const actualOpt = entry.getMajorities();
56 ASSERT_TRUE(actualOpt.has_value());
58 EXPECT_TRUE(entry.hasMajorities());
62 auto const& expected = previousTxnIDValue;
63 auto const actualOpt = entry.getPreviousTxnID();
64 ASSERT_TRUE(actualOpt.has_value());
66 EXPECT_TRUE(entry.hasPreviousTxnID());
70 auto const& expected = previousTxnLgrSeqValue;
71 auto const actualOpt = entry.getPreviousTxnLgrSeq();
72 ASSERT_TRUE(actualOpt.has_value());
74 EXPECT_TRUE(entry.hasPreviousTxnLgrSeq());
77 EXPECT_TRUE(entry.hasLedgerIndex());
78 auto const ledgerIndex = entry.getLedgerIndex();
79 ASSERT_TRUE(ledgerIndex.has_value());
80 EXPECT_EQ(*ledgerIndex, index);
81 EXPECT_EQ(entry.getKey(), index);
86TEST(AmendmentsTests, BuilderFromSleRoundTrip)
97 sle->at(sfAmendments) = amendmentsValue;
98 sle->setFieldArray(sfMajorities, majoritiesValue);
99 sle->at(sfPreviousTxnID) = previousTxnIDValue;
100 sle->at(sfPreviousTxnLgrSeq) = previousTxnLgrSeqValue;
103 EXPECT_TRUE(builderFromSle.validate());
105 auto const entryFromBuilder = builderFromSle.build(index);
108 EXPECT_TRUE(entryFromBuilder.validate());
109 EXPECT_TRUE(entryFromSle.validate());
112 auto const& expected = amendmentsValue;
114 auto const fromSleOpt = entryFromSle.getAmendments();
115 auto const fromBuilderOpt = entryFromBuilder.getAmendments();
117 ASSERT_TRUE(fromSleOpt.has_value());
118 ASSERT_TRUE(fromBuilderOpt.has_value());
125 auto const& expected = majoritiesValue;
127 auto const fromSleOpt = entryFromSle.getMajorities();
128 auto const fromBuilderOpt = entryFromBuilder.getMajorities();
130 ASSERT_TRUE(fromSleOpt.has_value());
131 ASSERT_TRUE(fromBuilderOpt.has_value());
138 auto const& expected = previousTxnIDValue;
140 auto const fromSleOpt = entryFromSle.getPreviousTxnID();
141 auto const fromBuilderOpt = entryFromBuilder.getPreviousTxnID();
143 ASSERT_TRUE(fromSleOpt.has_value());
144 ASSERT_TRUE(fromBuilderOpt.has_value());
151 auto const& expected = previousTxnLgrSeqValue;
153 auto const fromSleOpt = entryFromSle.getPreviousTxnLgrSeq();
154 auto const fromBuilderOpt = entryFromBuilder.getPreviousTxnLgrSeq();
156 ASSERT_TRUE(fromSleOpt.has_value());
157 ASSERT_TRUE(fromBuilderOpt.has_value());
163 EXPECT_EQ(entryFromSle.getKey(), index);
164 EXPECT_EQ(entryFromBuilder.getKey(), index);
204TEST(AmendmentsTests, OptionalFieldsReturnNullopt)
212 auto const entry = builder.build(index);
215 EXPECT_FALSE(entry.hasAmendments());
216 EXPECT_FALSE(entry.getAmendments().has_value());
217 EXPECT_FALSE(entry.hasMajorities());
218 EXPECT_FALSE(entry.getMajorities().has_value());
219 EXPECT_FALSE(entry.hasPreviousTxnID());
220 EXPECT_FALSE(entry.getPreviousTxnID().has_value());
221 EXPECT_FALSE(entry.hasPreviousTxnLgrSeq());
222 EXPECT_FALSE(entry.getPreviousTxnLgrSeq().has_value());
std::shared_ptr< SLE const > getSle() const
Get the underlying SLE object.
Derived & setLedgerIndex(uint256 const &value)
Set the ledger index.
Derived & setFlags(uint32_t value)
Set the flags.