19TEST(OfferTests, BuilderSettersRoundTrip)
45 previousTxnLgrSeqValue
55 EXPECT_TRUE(builder.validate());
57 auto const entry = builder.build(index);
59 EXPECT_TRUE(entry.validate());
62 auto const& expected = accountValue;
63 auto const actual = entry.getAccount();
68 auto const& expected = sequenceValue;
69 auto const actual = entry.getSequence();
74 auto const& expected = takerPaysValue;
75 auto const actual = entry.getTakerPays();
80 auto const& expected = takerGetsValue;
81 auto const actual = entry.getTakerGets();
86 auto const& expected = bookDirectoryValue;
87 auto const actual = entry.getBookDirectory();
92 auto const& expected = bookNodeValue;
93 auto const actual = entry.getBookNode();
98 auto const& expected = ownerNodeValue;
99 auto const actual = entry.getOwnerNode();
104 auto const& expected = previousTxnIDValue;
105 auto const actual = entry.getPreviousTxnID();
110 auto const& expected = previousTxnLgrSeqValue;
111 auto const actual = entry.getPreviousTxnLgrSeq();
116 auto const& expected = expirationValue;
117 auto const actualOpt = entry.getExpiration();
118 ASSERT_TRUE(actualOpt.has_value());
120 EXPECT_TRUE(entry.hasExpiration());
124 auto const& expected = domainIDValue;
125 auto const actualOpt = entry.getDomainID();
126 ASSERT_TRUE(actualOpt.has_value());
128 EXPECT_TRUE(entry.hasDomainID());
132 auto const& expected = additionalBooksValue;
133 auto const actualOpt = entry.getAdditionalBooks();
134 ASSERT_TRUE(actualOpt.has_value());
136 EXPECT_TRUE(entry.hasAdditionalBooks());
139 EXPECT_TRUE(entry.hasLedgerIndex());
140 auto const ledgerIndex = entry.getLedgerIndex();
141 ASSERT_TRUE(ledgerIndex.has_value());
142 EXPECT_EQ(*ledgerIndex, index);
143 EXPECT_EQ(entry.getKey(), index);
148TEST(OfferTests, BuilderFromSleRoundTrip)
167 sle->at(sfAccount) = accountValue;
168 sle->at(sfSequence) = sequenceValue;
169 sle->at(sfTakerPays) = takerPaysValue;
170 sle->at(sfTakerGets) = takerGetsValue;
171 sle->at(sfBookDirectory) = bookDirectoryValue;
172 sle->at(sfBookNode) = bookNodeValue;
173 sle->at(sfOwnerNode) = ownerNodeValue;
174 sle->at(sfPreviousTxnID) = previousTxnIDValue;
175 sle->at(sfPreviousTxnLgrSeq) = previousTxnLgrSeqValue;
176 sle->at(sfExpiration) = expirationValue;
177 sle->at(sfDomainID) = domainIDValue;
178 sle->setFieldArray(sfAdditionalBooks, additionalBooksValue);
181 EXPECT_TRUE(builderFromSle.validate());
183 auto const entryFromBuilder = builderFromSle.build(index);
185 Offer entryFromSle{sle};
186 EXPECT_TRUE(entryFromBuilder.validate());
187 EXPECT_TRUE(entryFromSle.validate());
190 auto const& expected = accountValue;
192 auto const fromSle = entryFromSle.getAccount();
193 auto const fromBuilder = entryFromBuilder.getAccount();
200 auto const& expected = sequenceValue;
202 auto const fromSle = entryFromSle.getSequence();
203 auto const fromBuilder = entryFromBuilder.getSequence();
210 auto const& expected = takerPaysValue;
212 auto const fromSle = entryFromSle.getTakerPays();
213 auto const fromBuilder = entryFromBuilder.getTakerPays();
220 auto const& expected = takerGetsValue;
222 auto const fromSle = entryFromSle.getTakerGets();
223 auto const fromBuilder = entryFromBuilder.getTakerGets();
230 auto const& expected = bookDirectoryValue;
232 auto const fromSle = entryFromSle.getBookDirectory();
233 auto const fromBuilder = entryFromBuilder.getBookDirectory();
240 auto const& expected = bookNodeValue;
242 auto const fromSle = entryFromSle.getBookNode();
243 auto const fromBuilder = entryFromBuilder.getBookNode();
250 auto const& expected = ownerNodeValue;
252 auto const fromSle = entryFromSle.getOwnerNode();
253 auto const fromBuilder = entryFromBuilder.getOwnerNode();
260 auto const& expected = previousTxnIDValue;
262 auto const fromSle = entryFromSle.getPreviousTxnID();
263 auto const fromBuilder = entryFromBuilder.getPreviousTxnID();
270 auto const& expected = previousTxnLgrSeqValue;
272 auto const fromSle = entryFromSle.getPreviousTxnLgrSeq();
273 auto const fromBuilder = entryFromBuilder.getPreviousTxnLgrSeq();
280 auto const& expected = expirationValue;
282 auto const fromSleOpt = entryFromSle.getExpiration();
283 auto const fromBuilderOpt = entryFromBuilder.getExpiration();
285 ASSERT_TRUE(fromSleOpt.has_value());
286 ASSERT_TRUE(fromBuilderOpt.has_value());
293 auto const& expected = domainIDValue;
295 auto const fromSleOpt = entryFromSle.getDomainID();
296 auto const fromBuilderOpt = entryFromBuilder.getDomainID();
298 ASSERT_TRUE(fromSleOpt.has_value());
299 ASSERT_TRUE(fromBuilderOpt.has_value());
306 auto const& expected = additionalBooksValue;
308 auto const fromSleOpt = entryFromSle.getAdditionalBooks();
309 auto const fromBuilderOpt = entryFromBuilder.getAdditionalBooks();
311 ASSERT_TRUE(fromSleOpt.has_value());
312 ASSERT_TRUE(fromBuilderOpt.has_value());
318 EXPECT_EQ(entryFromSle.getKey(), index);
319 EXPECT_EQ(entryFromBuilder.getKey(), index);
std::shared_ptr< SLE const > getSle() const
Get the underlying SLE object.