Mercurial > hg > orthanc-databases
comparison SQLite/UnitTests/UnitTestsMain.cpp @ 215:b40b30075c51
added TransactionType_Implicit
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 26 Mar 2021 17:32:29 +0100 |
parents | 42990b2dd51b |
children | 94c9908e6aca |
comparison
equal
deleted
inserted
replaced
214:ab96698c73a3 | 215:b40b30075c51 |
---|---|
67 | 67 |
68 ASSERT_FALSE(db.DoesTableExist("test")); | 68 ASSERT_FALSE(db.DoesTableExist("test")); |
69 ASSERT_FALSE(db.DoesTableExist("test2")); | 69 ASSERT_FALSE(db.DoesTableExist("test2")); |
70 | 70 |
71 { | 71 { |
72 std::unique_ptr<OrthancDatabases::ITransaction> t(db.CreateTransaction(false)); | 72 std::unique_ptr<OrthancDatabases::ITransaction> t(db.CreateTransaction(OrthancDatabases::TransactionType_ReadWrite)); |
73 ASSERT_FALSE(t->IsImplicit()); | 73 ASSERT_FALSE(t->IsImplicit()); |
74 } | 74 } |
75 | 75 |
76 { | 76 { |
77 OrthancDatabases::Query query("CREATE TABLE test(id INT)", false); | 77 OrthancDatabases::Query query("CREATE TABLE test(id INT)", false); |
78 std::unique_ptr<OrthancDatabases::IPrecompiledStatement> s(db.Compile(query)); | 78 std::unique_ptr<OrthancDatabases::IPrecompiledStatement> s(db.Compile(query)); |
79 | 79 |
80 std::unique_ptr<OrthancDatabases::ITransaction> t(db.CreateTransaction(true)); | 80 std::unique_ptr<OrthancDatabases::ITransaction> t(db.CreateTransaction(OrthancDatabases::TransactionType_Implicit)); |
81 ASSERT_TRUE(t->IsImplicit()); | 81 ASSERT_TRUE(t->IsImplicit()); |
82 ASSERT_THROW(t->Commit(), Orthanc::OrthancException); | 82 ASSERT_THROW(t->Commit(), Orthanc::OrthancException); |
83 ASSERT_THROW(t->Rollback(), Orthanc::OrthancException); | 83 ASSERT_THROW(t->Rollback(), Orthanc::OrthancException); |
84 | 84 |
85 OrthancDatabases::Dictionary args; | 85 OrthancDatabases::Dictionary args; |
93 { | 93 { |
94 // An implicit transaction does not need to be explicitely committed | 94 // An implicit transaction does not need to be explicitely committed |
95 OrthancDatabases::Query query("CREATE TABLE test2(id INT)", false); | 95 OrthancDatabases::Query query("CREATE TABLE test2(id INT)", false); |
96 std::unique_ptr<OrthancDatabases::IPrecompiledStatement> s(db.Compile(query)); | 96 std::unique_ptr<OrthancDatabases::IPrecompiledStatement> s(db.Compile(query)); |
97 | 97 |
98 std::unique_ptr<OrthancDatabases::ITransaction> t(db.CreateTransaction(true)); | 98 std::unique_ptr<OrthancDatabases::ITransaction> t(db.CreateTransaction(OrthancDatabases::TransactionType_Implicit)); |
99 | 99 |
100 OrthancDatabases::Dictionary args; | 100 OrthancDatabases::Dictionary args; |
101 t->ExecuteWithoutResult(*s, args); | 101 t->ExecuteWithoutResult(*s, args); |
102 } | 102 } |
103 | 103 |