124 namespace sph = oral::sph;
126 void OralTest::testAutoPKeyRecordInsertSelect ()
129 const auto& list =
adapted->Select ();
133 void OralTest::testAutoPKeyRecordInsertRvalueReturnsPKey ()
138 for (
int i = 0;
i < 3; ++
i)
139 ids <<
adapted->Insert ({ 0, QString::number (i) });
144 void OralTest::testAutoPKeyRecordInsertConstLvalueReturnsPKey ()
149 for (
int i = 0;
i < 3; ++
i)
150 records.push_back ({ 0, QString::number (i) });
159 void OralTest::testAutoPKeyRecordInsertSetsPKey ()
164 for (
int i = 0;
i < 3; ++
i)
165 records.push_back ({ 0, QString::number (i) });
173 void OralTest::testNoPKeyRecordInsertSelect ()
176 const auto& list =
adapted->Select ();
180 void OralTest::testNonInPlaceConstructibleRecordInsertSelect ()
182 auto adapted = Util::oral::AdaptPtr<NonInPlaceConstructibleRecord, OralFactory> (
MakeDatabase ());
183 for (
int i = 0;
i < 3; ++
i)
184 adapted->Insert ({ i, QString::number (i), 0 });
186 const auto& list =
adapted->Select ();
192 template<
typename Ex,
typename F>
209 void OralTest::testComplexConstraintsRecordInsertSelectDefault ()
211 auto adapted = Util::oral::AdaptPtr<ComplexConstraintsRecord, OralFactory> (
MakeDatabase ());
213 adapted->Insert ({ 0,
"first", 1, 2 });
216 adapted->Insert ({ 0,
"second", 1, 3 });
219 const auto& list =
adapted->Select ();
223 void OralTest::testComplexConstraintsRecordInsertSelectIgnore ()
225 auto adapted = Util::oral::AdaptPtr<ComplexConstraintsRecord, OralFactory> (
MakeDatabase ());
227 adapted->Insert ({ 0,
"first", 1, 2 }, lco::InsertAction::Ignore);
228 adapted->Insert ({ 0,
"second", 1, 2 }, lco::InsertAction::Ignore);
229 adapted->Insert ({ 0,
"first", 1, 3 }, lco::InsertAction::Ignore);
230 adapted->Insert ({ 0,
"second", 1, 3 }, lco::InsertAction::Ignore);
231 adapted->Insert ({ 0,
"first", 1, 3 }, lco::InsertAction::Ignore);
233 const auto& list =
adapted->Select ();
237 void OralTest::testComplexConstraintsRecordInsertSelectReplace ()
239 auto adapted = Util::oral::AdaptPtr<ComplexConstraintsRecord, OralFactory> (
MakeDatabase ());
241 const auto idValueFields = lco::InsertAction::Replace::Fields<
242 &ComplexConstraintsRecord::ID_,
243 &ComplexConstraintsRecord::Value_
246 &ComplexConstraintsRecord::Weight_,
247 &ComplexConstraintsRecord::Age_
255 const auto& list =
adapted->Select ();