transactd 1.2.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (306) hide show
  1. checksums.yaml +4 -4
  2. data/BUILD_UNIX-JA +46 -67
  3. data/BUILD_WIN-JA +106 -63
  4. data/CMakeLists.txt +40 -15
  5. data/README +219 -75
  6. data/README-JA +207 -76
  7. data/README_ORMSRCGEN +118 -0
  8. data/README_ORMSRCGEN-JA +115 -0
  9. data/bin/common/tdclc_32_2_0.dll +0 -0
  10. data/bin/common/tdclc_64_2_0.dll +0 -0
  11. data/build/common/check_for_link_iconv.cmake +18 -14
  12. data/build/common/create_symlink.cmake.in +25 -0
  13. data/build/common/get_boost_libs.cmake +23 -23
  14. data/build/common/options.cmake +0 -66
  15. data/build/common/smart_install.cmake +3 -3
  16. data/build/common/transactd.rc.in +15 -5
  17. data/build/common/transactd_cl_common.cmake +37 -18
  18. data/build/common/transactd_cl_output.cmake +55 -13
  19. data/build/common/transactd_common.cmake +108 -31
  20. data/build/swig/php/generate.cmake.in +15 -17
  21. data/build/swig/php/generate.cmd.in +15 -9
  22. data/build/swig/php/php.swg +124 -82
  23. data/build/swig/php/transactd.no_yield.php +4494 -0
  24. data/build/swig/php/transactd.no_yield.php.git.patch +685 -0
  25. data/build/swig/php/transactd.no_yield.php.patch +685 -0
  26. data/build/swig/php/transactd.yield.php +4461 -0
  27. data/build/swig/php/transactd.yield.php.git.patch +652 -0
  28. data/build/swig/php/transactd.yield.php.patch +652 -0
  29. data/build/swig/referencecounter.h +79 -0
  30. data/build/swig/ruby/ruby.swg +226 -76
  31. data/build/swig/ruby/threadBlockRegionWrapper.h +71 -0
  32. data/build/swig/ruby/without_gvl.swg +87 -0
  33. data/build/swig/tdcl.i +659 -170
  34. data/build/swig/validatablepointer.h +91 -0
  35. data/build/tdclc/CMakeLists.txt +49 -34
  36. data/build/tdclc/{tdclc_64.cbproj → tdclc.cbproj} +65 -20
  37. data/build/tdclc/tdclc.rc +0 -0
  38. data/build/tdclcpp/CMakeLists.txt +84 -20
  39. data/build/tdclcpp/tdclcpp.rc +0 -0
  40. data/build/tdclcpp/{tdclcpp_bcb_64.cbproj → tdclcpp_bc.cbproj} +168 -44
  41. data/build/tdclrb/CMakeLists.txt +84 -66
  42. data/build/tdclrb/bldgem/extconf.rb +28 -3
  43. data/build/tdclrb/gem/helper.rb +11 -1
  44. data/build/tdclrb/gem_output.cmake +20 -16
  45. data/index_ja.html +15 -0
  46. data/source/bzs/db/IBlobBuffer.h +15 -17
  47. data/source/bzs/db/blobBuffer.h +186 -140
  48. data/source/bzs/db/blobStructs.h +37 -37
  49. data/source/bzs/db/engine/mysql/IReadRecords.h +34 -34
  50. data/source/bzs/db/engine/mysql/bookmark.h +150 -147
  51. data/source/bzs/db/engine/mysql/database.cpp +1721 -1526
  52. data/source/bzs/db/engine/mysql/database.h +608 -370
  53. data/source/bzs/db/engine/mysql/dbManager.cpp +213 -201
  54. data/source/bzs/db/engine/mysql/dbManager.h +115 -104
  55. data/source/bzs/db/engine/mysql/errorMessage.cpp +49 -50
  56. data/source/bzs/db/engine/mysql/errorMessage.h +25 -26
  57. data/source/bzs/db/engine/mysql/fieldAccess.h +55 -61
  58. data/source/bzs/db/engine/mysql/mydebuglog.cpp +326 -292
  59. data/source/bzs/db/engine/mysql/mydebuglog.h +63 -55
  60. data/source/bzs/db/engine/mysql/mysqlInternal.h +182 -125
  61. data/source/bzs/db/engine/mysql/mysqlThd.cpp +121 -121
  62. data/source/bzs/db/engine/mysql/mysqlThd.h +20 -20
  63. data/source/bzs/db/engine/mysql/percentageKey.h +241 -228
  64. data/source/bzs/db/protocol/ICommandExecuter.h +18 -17
  65. data/source/bzs/db/protocol/hs/hsCommandExecuter.cpp +543 -514
  66. data/source/bzs/db/protocol/hs/hsCommandExecuter.h +155 -158
  67. data/source/bzs/db/protocol/tdap/btrDate.cpp +213 -180
  68. data/source/bzs/db/protocol/tdap/btrDate.h +39 -37
  69. data/source/bzs/db/protocol/tdap/client/activeTable.cpp +173 -0
  70. data/source/bzs/db/protocol/tdap/client/activeTable.h +165 -0
  71. data/source/bzs/db/protocol/tdap/client/activeTableImple.h +370 -0
  72. data/source/bzs/db/protocol/tdap/client/bulkInsert.h +13 -23
  73. data/source/bzs/db/protocol/tdap/client/client.cpp +81 -68
  74. data/source/bzs/db/protocol/tdap/client/client.h +361 -320
  75. data/source/bzs/db/protocol/tdap/client/connMgr.cpp +17 -22
  76. data/source/bzs/db/protocol/tdap/client/connMgr.h +17 -19
  77. data/source/bzs/db/protocol/tdap/client/connectionPool.cpp +243 -0
  78. data/source/bzs/db/protocol/tdap/client/connectionPool.h +109 -0
  79. data/source/bzs/db/protocol/tdap/client/database.cpp +327 -219
  80. data/source/bzs/db/protocol/tdap/client/database.h +141 -118
  81. data/source/bzs/db/protocol/tdap/client/databaseFactory.cpp +60 -62
  82. data/source/bzs/db/protocol/tdap/client/databaseManager.h +255 -0
  83. data/source/bzs/db/protocol/tdap/client/dbDef.cpp +315 -202
  84. data/source/bzs/db/protocol/tdap/client/dbDef.h +40 -32
  85. data/source/bzs/db/protocol/tdap/client/dllmain.cpp +390 -371
  86. data/source/bzs/db/protocol/tdap/client/errorMessage.cpp +148 -56
  87. data/source/bzs/db/protocol/tdap/client/errorMessage_ja.cpp +149 -57
  88. data/source/bzs/db/protocol/tdap/client/export.h +35 -0
  89. data/source/bzs/db/protocol/tdap/client/field.cpp +1985 -0
  90. data/source/bzs/db/protocol/tdap/client/field.h +393 -0
  91. data/source/bzs/db/protocol/tdap/client/fieldDDF.cpp +14 -14
  92. data/source/bzs/db/protocol/tdap/client/fieldDDF.h +11 -14
  93. data/source/bzs/db/protocol/tdap/client/fieldNameAlias.cpp +123 -0
  94. data/source/bzs/db/protocol/tdap/client/fieldNameAlias.h +58 -0
  95. data/source/bzs/db/protocol/tdap/client/fields.h +178 -0
  96. data/source/bzs/db/protocol/tdap/client/fileDDF.cpp +13 -16
  97. data/source/bzs/db/protocol/tdap/client/fileDDF.h +11 -17
  98. data/source/bzs/db/protocol/tdap/client/filter.h +423 -259
  99. data/source/bzs/db/protocol/tdap/client/groupComp.h +117 -0
  100. data/source/bzs/db/protocol/tdap/client/groupQuery.cpp +818 -0
  101. data/source/bzs/db/protocol/tdap/client/groupQuery.h +281 -0
  102. data/source/bzs/db/protocol/tdap/client/indexDDF.cpp +14 -17
  103. data/source/bzs/db/protocol/tdap/client/indexDDF.h +11 -14
  104. data/source/bzs/db/protocol/tdap/client/memRecord.cpp +231 -0
  105. data/source/bzs/db/protocol/tdap/client/memRecord.h +145 -0
  106. data/source/bzs/db/protocol/tdap/client/memRecordset.cpp +448 -0
  107. data/source/bzs/db/protocol/tdap/client/memRecordset.h +159 -0
  108. data/source/bzs/db/protocol/tdap/client/nsDatabase.cpp +300 -173
  109. data/source/bzs/db/protocol/tdap/client/nsDatabase.h +53 -36
  110. data/source/bzs/db/protocol/tdap/client/nsTable.cpp +171 -128
  111. data/source/bzs/db/protocol/tdap/client/nsTable.h +121 -87
  112. data/source/bzs/db/protocol/tdap/client/pooledDatabaseManager.h +173 -0
  113. data/source/bzs/db/protocol/tdap/client/recordset.cpp +209 -0
  114. data/source/bzs/db/protocol/tdap/client/recordset.h +86 -0
  115. data/source/bzs/db/protocol/tdap/client/recordsetImple.h +596 -0
  116. data/source/bzs/db/protocol/tdap/client/request.h +227 -170
  117. data/source/bzs/db/protocol/tdap/client/serializer.cpp +1288 -0
  118. data/source/bzs/db/protocol/tdap/client/serializer.h +295 -0
  119. data/source/bzs/db/protocol/tdap/client/sharedData.cpp +9 -12
  120. data/source/bzs/db/protocol/tdap/client/sharedData.h +18 -16
  121. data/source/bzs/db/protocol/tdap/client/sqlBuilder.cpp +494 -473
  122. data/source/bzs/db/protocol/tdap/client/sqlBuilder.h +51 -53
  123. data/source/bzs/db/protocol/tdap/client/stringConverter.h +214 -148
  124. data/source/bzs/db/protocol/tdap/client/table.cpp +929 -1665
  125. data/source/bzs/db/protocol/tdap/client/table.h +413 -87
  126. data/source/bzs/db/protocol/tdap/client/trdboostapi.h +642 -534
  127. data/source/bzs/db/protocol/tdap/client/trdboostapiInternal.h +25 -40
  128. data/source/bzs/db/protocol/tdap/client/trdclcppautolink.h +11 -15
  129. data/source/bzs/db/protocol/tdap/client/trdormapi.h +378 -437
  130. data/source/bzs/db/protocol/tdap/client/trnsctcl.def +1 -1
  131. data/source/bzs/db/protocol/tdap/fieldComp.h +127 -0
  132. data/source/bzs/db/protocol/tdap/myDateTime.cpp +352 -345
  133. data/source/bzs/db/protocol/tdap/mysql/characterset.cpp +75 -78
  134. data/source/bzs/db/protocol/tdap/mysql/characterset.h +18 -19
  135. data/source/bzs/db/protocol/tdap/mysql/databaseSchema.cpp +216 -199
  136. data/source/bzs/db/protocol/tdap/mysql/databaseSchema.h +23 -14
  137. data/source/bzs/db/protocol/tdap/mysql/debuglog.cpp +354 -314
  138. data/source/bzs/db/protocol/tdap/mysql/debuglog.h +57 -47
  139. data/source/bzs/db/protocol/tdap/mysql/recordsetReader.h +905 -739
  140. data/source/bzs/db/protocol/tdap/mysql/request.h +152 -159
  141. data/source/bzs/db/protocol/tdap/mysql/tdapCommandExecuter.cpp +1044 -879
  142. data/source/bzs/db/protocol/tdap/mysql/tdapCommandExecuter.h +87 -81
  143. data/source/bzs/db/protocol/tdap/tdapRequest.h +162 -130
  144. data/source/bzs/db/protocol/tdap/tdapSchema.cpp +368 -166
  145. data/source/bzs/db/protocol/tdap/tdapSchema.h +702 -566
  146. data/source/bzs/db/protocol/tdap/tdapcapi.h +387 -353
  147. data/source/bzs/db/transactd/appBuilderImple.h +21 -20
  148. data/source/bzs/db/transactd/appModule.cpp +350 -98
  149. data/source/bzs/db/transactd/appModule.h +31 -37
  150. data/source/bzs/db/transactd/connManager.cpp +138 -135
  151. data/source/bzs/db/transactd/connManager.h +28 -21
  152. data/source/bzs/db/transactd/connectionRecord.h +39 -39
  153. data/source/bzs/db/transactd/transactd.cpp +217 -203
  154. data/source/bzs/env/boost_bcb_link.h +131 -0
  155. data/source/bzs/env/compiler.h +136 -79
  156. data/source/bzs/env/crosscompile.cpp +57 -57
  157. data/source/bzs/env/crosscompile.h +130 -115
  158. data/source/bzs/env/fileopen.h +7 -8
  159. data/source/bzs/env/mbcswchrLinux.cpp +4 -9
  160. data/source/bzs/env/mbcswchrLinux.h +37 -34
  161. data/source/bzs/env/tcharMinGW.h +59 -0
  162. data/source/bzs/env/tstring.h +90 -95
  163. data/source/bzs/example/changeSchema.cpp +22 -23
  164. data/source/bzs/example/changeSchema_c.cpp +22 -24
  165. data/source/bzs/example/connection_pool_c.cpp +49 -104
  166. data/source/bzs/example/createDatabase.cpp +40 -47
  167. data/source/bzs/example/createDatabase_c.cpp +38 -43
  168. data/source/bzs/example/deleteRecords.cpp +10 -15
  169. data/source/bzs/example/deleteRecords_c.cpp +10 -14
  170. data/source/bzs/example/dropDatabase.cpp +3 -9
  171. data/source/bzs/example/dropDatabase_c.cpp +5 -6
  172. data/source/bzs/example/insertRecords.cpp +37 -29
  173. data/source/bzs/example/insertRecords_c.cpp +19 -25
  174. data/source/bzs/example/ormap_c.cpp +621 -0
  175. data/source/bzs/example/queryData.cpp +371 -0
  176. data/source/bzs/example/queryData.h +16 -0
  177. data/source/bzs/example/query_c.cpp +109 -0
  178. data/source/bzs/example/readRecords.cpp +27 -27
  179. data/source/bzs/example/readRecords_c.cpp +25 -23
  180. data/source/bzs/example/updateRecords.cpp +16 -21
  181. data/source/bzs/example/updateRecords_c.cpp +8 -12
  182. data/source/bzs/example/update_with_transaction.cpp +21 -24
  183. data/source/bzs/example/update_with_transaction_c.cpp +12 -15
  184. data/source/bzs/example/useORMRecord.cpp +177 -0
  185. data/source/bzs/netsvc/client/tcpClient.cpp +167 -156
  186. data/source/bzs/netsvc/client/tcpClient.h +541 -489
  187. data/source/bzs/netsvc/server/IAppModule.h +119 -32
  188. data/source/bzs/netsvc/server/iserver.h +21 -23
  189. data/source/bzs/netsvc/server/serverCpt.cpp +421 -391
  190. data/source/bzs/netsvc/server/serverCpt.h +41 -43
  191. data/source/bzs/netsvc/server/serverPipe.cpp +580 -565
  192. data/source/bzs/netsvc/server/serverPipe.h +44 -45
  193. data/source/bzs/netsvc/server/serverTpool.cpp +333 -303
  194. data/source/bzs/netsvc/server/serverTpool.h +38 -43
  195. data/source/bzs/rtl/benchmark.cpp +91 -31
  196. data/source/bzs/rtl/benchmark.h +76 -22
  197. data/source/bzs/rtl/datetime.cpp +231 -233
  198. data/source/bzs/rtl/datetime.h +16 -16
  199. data/source/bzs/rtl/debuglog.cpp +48 -51
  200. data/source/bzs/rtl/debuglog.h +55 -44
  201. data/source/bzs/rtl/exception.h +55 -48
  202. data/source/bzs/rtl/stl_uty.cpp +27 -28
  203. data/source/bzs/rtl/stl_uty.h +28 -29
  204. data/source/bzs/rtl/stringBuffers.cpp +8 -6
  205. data/source/bzs/rtl/stringBuffers.h +16 -9
  206. data/source/bzs/rtl/strtrim.cpp +90 -91
  207. data/source/bzs/rtl/strtrim.h +14 -16
  208. data/source/bzs/test/tdclatl/bench_query_atl.js +647 -0
  209. data/source/bzs/test/tdclatl/bench_tdclatl.js +303 -303
  210. data/source/bzs/test/tdclatl/test_query_atl.js +669 -0
  211. data/source/bzs/test/tdclphp/bench.php +357 -0
  212. data/source/bzs/test/tdclphp/transactd_Test.php +907 -303
  213. data/source/bzs/test/tdclphp/transactd_blob_Test.php +21 -49
  214. data/source/bzs/test/tdclphp/transactd_datetime_Test.php +41 -75
  215. data/source/bzs/test/tdclphp/transactd_kanjischema_Test.php +23 -37
  216. data/source/bzs/test/tdclphp/transactd_pool_Test.php +120 -0
  217. data/source/bzs/test/tdclrb/bench_tdclcpp.rb +4 -6
  218. data/source/bzs/test/tdclrb/prepare.rb +15 -12
  219. data/source/bzs/test/tdclrb/transactd_blob_spec.rb +29 -32
  220. data/source/bzs/test/tdclrb/transactd_datetime_spec.rb +0 -29
  221. data/source/bzs/test/tdclrb/transactd_kanjischema_spec.rb +18 -19
  222. data/source/bzs/test/tdclrb/transactd_pool_spec.rb +107 -0
  223. data/source/bzs/test/tdclrb/transactd_spec.rb +734 -142
  224. data/source/bzs/test/transactdBench/query_bench.cpp +156 -0
  225. data/source/bzs/test/transactdBench/scaling_bench.cpp +265 -0
  226. data/source/bzs/test/transactdBench/transactdBench.cpp +107 -83
  227. data/source/bzs/test/transactdBench/transactdBench2.cpp +122 -83
  228. data/source/bzs/test/transactdBench/workerBase.cpp +5 -0
  229. data/source/bzs/test/transactdBench/workerBase.h +88 -0
  230. data/source/bzs/test/transactdBench/workerMySQLImple.h +333 -0
  231. data/source/bzs/test/transactdBench/workerTransactdImple.h +201 -0
  232. data/source/bzs/test/trdclengn/test_blob.cpp +121 -73
  233. data/source/bzs/test/trdclengn/test_trdclengn.cpp +1244 -426
  234. data/source/global/ormsrcgen/confParam.h +80 -0
  235. data/source/global/ormsrcgen/fieldName.cpp +77 -0
  236. data/source/global/ormsrcgen/fieldName.h +43 -0
  237. data/source/global/ormsrcgen/main.cpp +196 -0
  238. data/source/global/ormsrcgen/srcgen.cpp +763 -0
  239. data/source/global/ormsrcgen/srcgen.h +72 -0
  240. data/source/global/ormsrcgen/template/fieldNameList_sample.txt +2 -0
  241. data/source/global/ormsrcgen/template/ormDataClass_template.cpp +48 -0
  242. data/source/global/ormsrcgen/template/ormDataClass_template.h +34 -0
  243. data/source/global/ormsrcgen/template/ormMapClass_template.cpp +51 -0
  244. data/source/global/ormsrcgen/template/ormMapClass_template.h +62 -0
  245. data/source/global/ormsrcgen/template/template.cnf +38 -0
  246. data/source/global/querystmts/querystmts.cpp +237 -0
  247. data/source/global/tdclatl/ConnectParams.cpp +77 -0
  248. data/source/global/tdclatl/ConnectParams.h +70 -0
  249. data/source/global/tdclatl/Database.cpp +132 -128
  250. data/source/global/tdclatl/Database.h +60 -49
  251. data/source/global/tdclatl/DbDef.cpp +68 -64
  252. data/source/global/tdclatl/DbDef.h +36 -36
  253. data/source/global/tdclatl/Field.cpp +12 -17
  254. data/source/global/tdclatl/Field.h +15 -12
  255. data/source/global/tdclatl/FieldDef.cpp +75 -36
  256. data/source/global/tdclatl/FieldDef.h +38 -19
  257. data/source/global/tdclatl/FieldDefs.cpp +74 -0
  258. data/source/global/tdclatl/FieldDefs.h +56 -0
  259. data/source/global/tdclatl/FieldNames.cpp +99 -0
  260. data/source/global/tdclatl/FieldNames.h +66 -0
  261. data/source/global/tdclatl/Flags.cpp +75 -37
  262. data/source/global/tdclatl/Flags.h +13 -12
  263. data/source/global/tdclatl/GroupQuery.cpp +119 -0
  264. data/source/global/tdclatl/GroupQuery.h +65 -0
  265. data/source/global/tdclatl/KeyDef.cpp +15 -14
  266. data/source/global/tdclatl/KeyDef.h +20 -17
  267. data/source/global/tdclatl/KeySegment.cpp +13 -12
  268. data/source/global/tdclatl/PooledDbManager.cpp +223 -0
  269. data/source/global/tdclatl/PooledDbManager.h +76 -0
  270. data/source/global/tdclatl/QueryBase.cpp +206 -127
  271. data/source/global/tdclatl/QueryBase.h +55 -59
  272. data/source/global/tdclatl/Record.cpp +214 -0
  273. data/source/global/tdclatl/Record.h +96 -0
  274. data/source/global/tdclatl/Recordset.cpp +278 -0
  275. data/source/global/tdclatl/Recordset.h +83 -0
  276. data/source/global/tdclatl/RecordsetQuery.cpp +118 -0
  277. data/source/global/tdclatl/RecordsetQuery.h +126 -0
  278. data/source/global/tdclatl/Table.cpp +57 -60
  279. data/source/global/tdclatl/Table.h +32 -29
  280. data/source/global/tdclatl/TableDef.cpp +63 -62
  281. data/source/global/tdclatl/TableDef.h +20 -22
  282. data/source/global/tdclatl/TdVersion.cpp +3 -3
  283. data/source/global/tdclatl/TdVersion.h +15 -11
  284. data/source/global/tdclatl/_IDatabaseEvents_CP.h +99 -92
  285. data/source/global/tdclatl/activeTable.cpp +355 -0
  286. data/source/global/tdclatl/activeTable.h +79 -0
  287. data/source/global/tdclatl/dllmain.cpp +4 -3
  288. data/source/global/tdclatl/dllmain.h +7 -6
  289. data/source/global/tdclatl/keySegment.h +22 -18
  290. data/source/global/tdclatl/resource.h +0 -0
  291. data/source/global/tdclatl/stdafx.h +6 -4
  292. data/source/global/tdclatl/targetver.h +0 -1
  293. data/source/global/tdclatl/tdclatl.cpp +10 -5
  294. data/source/global/tdclatl/tdclatl.idl +530 -14
  295. data/source/linux/charsetConvert.h +78 -79
  296. data/source/linux/linuxTypes.h +9 -12
  297. data/source/linux/tchar.h +168 -166
  298. data/transactd.gemspec +24 -16
  299. metadata +98 -12
  300. data/bin/common/tdclc_32_1_2.dll +0 -0
  301. data/bin/common/tdclc_64_1_2.dll +0 -0
  302. data/build/tdclc/tdclc_32.cbproj +0 -173
  303. data/build/tdclcpp/tdclcpp_bcb_32.cbproj +0 -232
  304. data/build/tdclrb/GEM_VERSION +0 -3
  305. data/source/bzs/db/protocol/tdap/client/filter.cpp +0 -43
  306. data/source/bzs/example/useORM.cpp +0 -585
@@ -1,4 +1,22 @@
1
- #include <boost/test/included/unit_test.hpp>
1
+ /* =================================================================
2
+ Copyright (C) 2014 BizStation Corp All rights reserved.
3
+
4
+ This program is free software; you can redistribute it and/or
5
+ modify it under the terms of the GNU General Public License
6
+ as published by the Free Software Foundation; either version 2
7
+ of the License, or (at your option) any later version.
8
+
9
+ This program is distributed in the hope that it will be useful,
10
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
11
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
+ GNU General Public License for more details.
13
+
14
+ You should have received a copy of the GNU General Public License
15
+ along with this program; if not, write to the Free Software
16
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17
+ 02111-1307, USA.
18
+ ================================================================= */
19
+ #include <boost/test/included/unit_test.hpp>
2
20
  #include <bzs/db/protocol/tdap/client/database.h>
3
21
  #include <bzs/db/protocol/tdap/client/table.h>
4
22
  #include <bzs/db/protocol/tdap/client/dbDef.h>
@@ -17,14 +35,14 @@ using namespace std;
17
35
  #define TABLE_NAME _T("comments")
18
36
  #define TABLE_ID 1
19
37
 
20
- #define FDN_ID _T("id")
21
- #define FDN_USER _T("user_id")
22
- #define FDN_BODY _T("body")
23
- #define FDN_IMAGE _T("image")
24
- #define FDI_ID (short)0
25
- #define FDI_USER (short)1
26
- #define FDI_BODY (short)2
27
- #define FDI_IMAGE (short)3
38
+ #define FDN_ID _T("id")
39
+ #define FDN_USER _T("user_id")
40
+ #define FDN_BODY _T("body")
41
+ #define FDN_IMAGE _T("image")
42
+ #define FDI_ID (short)0
43
+ #define FDI_USER (short)1
44
+ #define FDI_BODY (short)2
45
+ #define FDI_IMAGE (short)3
28
46
 
29
47
  boost::unit_test::test_suite* init_unit_test_suite(int argc, char* argv[]);
30
48
 
@@ -48,10 +66,10 @@ public:
48
66
  ~fixture()
49
67
  {
50
68
  if (m_db)
51
- database::destroy(m_db);
69
+ database::destroy(m_db);
52
70
  }
53
71
 
54
- ::database* db() const {return m_db;}
72
+ ::database* db() const { return m_db; }
55
73
  };
56
74
 
57
75
  // ------------------------------------------------------------------------
@@ -59,20 +77,20 @@ public:
59
77
  void doInsertStringFileter(table* tb)
60
78
  {
61
79
  tb->clearBuffer();
62
- tb->setFV(FDI_USER, 1);
63
- tb->setFV(FDI_BODY, _T("1\ntest\nテスト\n\nあいうえおあいうえおb"));
80
+ tb->setFV(FDI_USER, 1);
81
+ tb->setFV(FDI_BODY, _T("1\ntest\nテスト\n\nあいうえおあいうえおb"));
64
82
  tb->setFV(FDI_IMAGE, _T("1\ntest\nテスト\n\nあいうえおあいうえおi"));
65
83
  tb->insert();
66
84
 
67
85
  tb->clearBuffer();
68
- tb->setFV(FDI_USER, 1);
69
- tb->setFV(FDI_BODY, _T("2\ntest\nテスト\n\nあいうえおあいうえおb"));
86
+ tb->setFV(FDI_USER, 1);
87
+ tb->setFV(FDI_BODY, _T("2\ntest\nテスト\n\nあいうえおあいうえおb"));
70
88
  tb->setFV(FDI_IMAGE, _T("2\ntest\nテスト\n\nあいうえおあいうえおi"));
71
89
  tb->insert();
72
90
 
73
91
  tb->clearBuffer();
74
- tb->setFV(FDI_USER, 2);
75
- tb->setFV(FDI_BODY, _T("3\ntest\nテスト\n\nあいうえおあいうえおb"));
92
+ tb->setFV(FDI_USER, 2);
93
+ tb->setFV(FDI_BODY, _T("3\ntest\nテスト\n\nあいうえおあいうえおb"));
76
94
  tb->setFV(FDI_IMAGE, _T("3\ntest\nテスト\n\nあいうえおあいうえおi"));
77
95
  tb->insert();
78
96
  }
@@ -87,29 +105,37 @@ void doTestSeek(table* tb)
87
105
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestSeek - stat 1");
88
106
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_ID) == 1, "doTestSeek - id 1");
89
107
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 1, "doTestSeek - user_id 1");
90
- BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
91
- _tstring(_T("1\ntest\nテスト\n\nあいうえおあいうえお")), "doTestSeek - body 1");
108
+ BOOST_CHECK_MESSAGE(
109
+ _tstring(tb->getFVstr(FDI_BODY)) ==
110
+ _tstring(_T("1\ntest\nテスト\n\nあいうえおあいうえおb")),
111
+ "doTestSeek - body 1");
92
112
  // 2
93
113
  tb->seekNext();
94
114
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestSeek - stat 2");
95
115
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_ID) == 2, "doTestSeek - id 2");
96
116
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 1, "doTestSeek - user_id 2");
97
- BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
98
- _tstring(_T("2\ntest\nテスト\n\nあいうえおあいうえお")), "doTestSeek - body 2");
117
+ BOOST_CHECK_MESSAGE(
118
+ _tstring(tb->getFVstr(FDI_BODY)) ==
119
+ _tstring(_T("2\ntest\nテスト\n\nあいうえおあいうえおb")),
120
+ "doTestSeek - body 2");
99
121
  // 3
100
122
  tb->seekNext();
101
123
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestSeek - stat 3");
102
124
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_ID) == 3, "doTestSeek - id 3");
103
125
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 2, "doTestSeek - user_id 3");
104
- BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
105
- _tstring(_T("3\ntest\nテスト\n\nあいうえおあいうえお")), "doTestSeek - body 3");
126
+ BOOST_CHECK_MESSAGE(
127
+ _tstring(tb->getFVstr(FDI_BODY)) ==
128
+ _tstring(_T("3\ntest\nテスト\n\nあいうえおあいうえおb")),
129
+ "doTestSeek - body 3");
106
130
  // 2
107
131
  tb->seekPrev();
108
132
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestSeek - stat 2");
109
133
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_ID) == 2, "doTestSeek - id 2");
110
134
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 1, "doTestSeek - user_id 2");
111
- BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
112
- _tstring(_T("2\ntest\nテスト\n\nあいうえおあいうえお")), "doTestSeek - body 2");
135
+ BOOST_CHECK_MESSAGE(
136
+ _tstring(tb->getFVstr(FDI_BODY)) ==
137
+ _tstring(_T("2\ntest\nテスト\n\nあいうえおあいうえおb")),
138
+ "doTestSeek - body 2");
113
139
  }
114
140
 
115
141
  void doTestFind(table* tb)
@@ -117,25 +143,27 @@ void doTestFind(table* tb)
117
143
  tb->setKeyNum(0);
118
144
  tb->clearBuffer();
119
145
 
120
- tb->setFilter(_T("id >= 1 and id < 3"), 1, 0);
146
+ tb->setFilter(_T("id >= 1 and id < 3"), 1, 0);
121
147
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestFind - setFilter");
122
148
 
123
149
  tb->setFV(FDI_ID, 1);
124
- tb->find(table::findForword);
150
+ tb->find(table::findForword);
125
151
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestFind - find");
126
152
  BOOST_CHECK_MESSAGE(1 == tb->getFVint(FDI_ID), "doTestFind - getFVint 1");
127
153
 
128
- tb->findNext(true);
154
+ tb->findNext(true);
129
155
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestFind - findNext");
130
156
  BOOST_CHECK_MESSAGE(2 == tb->getFVint(FDI_ID), "doTestFind - getFVint 2");
131
- BOOST_CHECK_MESSAGE(
132
- _tstring(_T("2\ntest\nテスト\n\nあいうえおあいうえおb")) == _tstring(tb->getFVstr(FDI_BODY)),
133
- "doTestFind - getFVstr 2");
157
+ BOOST_CHECK_MESSAGE(
158
+ _tstring(_T("2\ntest\nテスト\n\nあいうえおあいうえおb")) ==
159
+ _tstring(tb->getFVstr(FDI_BODY)),
160
+ "doTestFind - getFVstr 2");
134
161
  tb->findNext(true);
135
162
  BOOST_CHECK_MESSAGE(9 == tb->stat(), "doTestFind - findNext");
136
163
  // 2
137
- tb->findPrev(true);
138
- BOOST_CHECK_MESSAGE(tb->stat() == STATUS_PROGRAM_ERROR, "doTestFind - findPrev");
164
+ // tb->findPrev(true);
165
+ // BOOST_CHECK_MESSAGE(tb->stat() == STATUS_PROGRAM_ERROR, "doTestFind -
166
+ // findPrev");
139
167
  }
140
168
 
141
169
  void doTestUpdate(table* tb)
@@ -146,9 +174,12 @@ void doTestUpdate(table* tb)
146
174
  tb->seek();
147
175
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestUpdate - stat 1");
148
176
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_ID) == 1, "doTestUpdate - id 1");
149
- BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 1, "doTestUpdate - user_id 1");
150
- BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
151
- _tstring(_T("1\ntest\nテスト\n\nあいうえおあいうえお")), "doTestUpdate - body 1");
177
+ BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 1,
178
+ "doTestUpdate - user_id 1");
179
+ BOOST_CHECK_MESSAGE(
180
+ _tstring(tb->getFVstr(FDI_BODY)) ==
181
+ _tstring(_T("1\ntest\nテスト\n\nあいうえおあいうえおb")),
182
+ "doTestUpdate - body 1");
152
183
  // update
153
184
  tb->setFV(FDI_USER, 11);
154
185
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestUpdate - setFV stat 1");
@@ -160,9 +191,12 @@ void doTestUpdate(table* tb)
160
191
  tb->seekNext();
161
192
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestUpdate - stat 2");
162
193
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_ID) == 2, "doTestUpdate - id 2");
163
- BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 1, "doTestUpdate - user_id 2");
164
- BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
165
- _tstring(_T("2\ntest\nテスト\n\nあいうえおあいうえお")), "doTestUpdate - body 2");
194
+ BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 1,
195
+ "doTestUpdate - user_id 2");
196
+ BOOST_CHECK_MESSAGE(
197
+ _tstring(tb->getFVstr(FDI_BODY)) ==
198
+ _tstring(_T("2\ntest\nテスト\n\nあいうえおあいうえおb")),
199
+ "doTestUpdate - body 2");
166
200
  // update
167
201
  tb->setFV(FDI_USER, 12);
168
202
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestUpdate - setFV stat 2");
@@ -174,16 +208,20 @@ void doTestUpdate(table* tb)
174
208
  tb->seekPrev();
175
209
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestUpdate - stat 2 1");
176
210
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_ID) == 1, "doTestUpdate - id 2 1");
177
- BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 11, "doTestUpdate - user_id 2 1");
178
- BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
179
- _tstring(_T("1\nテスト\ntest\n\nABCDEFG")), "doTestUpdate - body 2 1");
211
+ BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 11,
212
+ "doTestUpdate - user_id 2 1");
213
+ BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
214
+ _tstring(_T("1\nテスト\ntest\n\nABCDEFG")),
215
+ "doTestUpdate - body 2 1");
180
216
  // check 2
181
217
  tb->seekNext();
182
218
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestUpdate - stat 2 2");
183
219
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_ID) == 2, "doTestUpdate - id 2 2");
184
- BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 12, "doTestUpdate - user_id 2 2");
185
- BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
186
- _tstring(_T("2\nテスト\ntest\n\nABCDEFG")), "doTestUpdate - body 2 2");
220
+ BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 12,
221
+ "doTestUpdate - user_id 2 2");
222
+ BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
223
+ _tstring(_T("2\nテスト\ntest\n\nABCDEFG")),
224
+ "doTestUpdate - body 2 2");
187
225
  }
188
226
 
189
227
  void doTestDelete(table* tb)
@@ -201,16 +239,21 @@ void doTestDelete(table* tb)
201
239
  tb->seek();
202
240
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestDelete - stat 1");
203
241
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_ID) == 1, "doTestDelete - id 1");
204
- BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 11, "doTestDelete - user_id 1");
205
- BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
206
- _tstring(_T("1\nテスト\ntest\n\nABCDEFG")), "doTestDelete - body 1");
242
+ BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 11,
243
+ "doTestDelete - user_id 1");
244
+ BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
245
+ _tstring(_T("1\nテスト\ntest\n\nABCDEFG")),
246
+ "doTestDelete - body 1");
207
247
  // next is 3
208
248
  tb->seekNext();
209
249
  BOOST_CHECK_MESSAGE(0 == tb->stat(), "doTestDelete - stat 3");
210
250
  BOOST_CHECK_MESSAGE(tb->getFVint(FDI_ID) == 3, "doTestDelete - id 3");
211
- BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 2, "doTestDelete - user_id 3");
212
- BOOST_CHECK_MESSAGE(_tstring(tb->getFVstr(FDI_BODY)) ==
213
- _tstring(_T("3\ntest\nテスト\n\nあいうえおあいうえお")), "doTestDelete - body 3");
251
+ BOOST_CHECK_MESSAGE(tb->getFVint(FDI_USER) == 2,
252
+ "doTestDelete - user_id 3");
253
+ BOOST_CHECK_MESSAGE(
254
+ _tstring(tb->getFVstr(FDI_BODY)) ==
255
+ _tstring(_T("3\ntest\nテスト\n\nあいうえおあいうえおb")),
256
+ "doTestDelete - body 3");
214
257
  // eof
215
258
  tb->seekNext();
216
259
  BOOST_CHECK_MESSAGE(tb->stat() == STATUS_EOF, "doTestDelete - eof 3");
@@ -219,14 +262,14 @@ void doTestDelete(table* tb)
219
262
  void createDatabase(database* db)
220
263
  {
221
264
  db->create(URL);
222
- if (db->stat() == STATUS_TABLE_EXISTS_ERROR)
223
- {
224
- db->open(URL, 0, 0);
225
- BOOST_CHECK_MESSAGE(0 == db->stat(), "createNewDataBase 1");
226
- db->drop();
227
- BOOST_CHECK_MESSAGE(0 == db->stat(), "drop stat=" << db->stat());
228
- db->create(URL);
229
- }
265
+ if (db->stat() == STATUS_TABLE_EXISTS_ERROR)
266
+ {
267
+ db->open(URL, 0, 0);
268
+ BOOST_CHECK_MESSAGE(0 == db->stat(), "createNewDataBase 1");
269
+ db->drop();
270
+ BOOST_CHECK_MESSAGE(0 == db->stat(), "drop stat=" << db->stat());
271
+ db->create(URL);
272
+ }
230
273
  BOOST_CHECK_MESSAGE(0 == db->stat(), "createNewDataBase");
231
274
  }
232
275
 
@@ -256,21 +299,24 @@ void createTable(database* db)
256
299
  fd->type = ft_autoinc;
257
300
  fd->len = (ushort_td)4;
258
301
  def->updateTableDef(TABLE_ID);
259
- BOOST_CHECK_MESSAGE(0 == def->stat(), "updateTableDef 1 stat = " << def->stat());
260
-
302
+ BOOST_CHECK_MESSAGE(0 == def->stat(),
303
+ "updateTableDef 1 stat = " << def->stat());
304
+
261
305
  fd = def->insertField(TABLE_ID, FDI_USER);
262
306
  fd->setName(FDN_USER);
263
307
  fd->type = ft_integer;
264
308
  fd->len = (ushort_td)4;
265
309
  def->updateTableDef(TABLE_ID);
266
- BOOST_CHECK_MESSAGE(0 == def->stat(), "updateTableDef 1 stat = " << def->stat());
310
+ BOOST_CHECK_MESSAGE(0 == def->stat(),
311
+ "updateTableDef 1 stat = " << def->stat());
267
312
 
268
313
  fd = def->insertField(TABLE_ID, FDI_BODY);
269
314
  fd->setName(FDN_BODY);
270
315
  fd->type = ft_mytext;
271
316
  fd->len = 10;
272
317
  def->updateTableDef(TABLE_ID);
273
- BOOST_CHECK_MESSAGE(0 == def->stat(), "updateTableDef 2 stat = " << def->stat());
318
+ BOOST_CHECK_MESSAGE(0 == def->stat(),
319
+ "updateTableDef 2 stat = " << def->stat());
274
320
 
275
321
  fd = def->insertField(TABLE_ID, FDI_IMAGE);
276
322
  fd->setName(FDN_IMAGE);
@@ -290,23 +336,24 @@ void createTable(database* db)
290
336
 
291
337
  void testStringFileter(database* db)
292
338
  {
293
- createDatabase(db);
339
+ createDatabase(db);
294
340
 
295
341
  db->open(URL, 0, 0);
296
- BOOST_CHECK_MESSAGE(0 == db->stat(), "createNewDataBase 1 stat = " << db->stat());
342
+ BOOST_CHECK_MESSAGE(0 == db->stat(),
343
+ "createNewDataBase 1 stat = " << db->stat());
297
344
 
298
- createTable(db);
345
+ createTable(db);
299
346
 
300
347
  table* tb = db->openTable(TABLE_ID);
301
348
  BOOST_CHECK_MESSAGE(0 == db->stat(), "openTable");
302
-
349
+
303
350
  doInsertStringFileter(tb);
304
351
  doTestSeek(tb);
305
- doTestFind(tb);
352
+ doTestFind(tb);
306
353
  doTestUpdate(tb);
307
354
  doTestDelete(tb);
308
-
309
- tb->release();
355
+
356
+ tb->release();
310
357
 
311
358
  db->close();
312
359
 
@@ -316,12 +363,13 @@ void testStringFileter(database* db)
316
363
  BOOST_CHECK_MESSAGE(0 == db->stat(), "drop stat=" << db->stat());
317
364
  }
318
365
 
319
-
320
366
  // ------------------------------------------------------------------------
321
367
  BOOST_AUTO_TEST_SUITE(filter)
322
368
 
323
- BOOST_FIXTURE_TEST_CASE(stringFileter, fixture) {testStringFileter(db());}
369
+ BOOST_FIXTURE_TEST_CASE(stringFileter, fixture)
370
+ {
371
+ testStringFileter(db());
372
+ }
324
373
 
325
374
  BOOST_AUTO_TEST_SUITE_END()
326
375
  // ------------------------------------------------------------------------
327
-