Changeset 3561
- Timestamp:
- Mar 29, 2005, 9:03:48 PM (21 years ago)
- Location:
- trunk/psLib/test
- Files:
-
- 3 edited
-
astronomy/tst_psDB.c (modified) (23 diffs)
-
dataIO/tst_psDB.c (modified) (23 diffs)
-
fileUtils/tst_psDB.c (modified) (23 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/test/astronomy/tst_psDB.c
r3545 r3561 9 9 * @author Aaron Culliney, MHPCC 10 10 * 11 * @version $Revision: 1. 2$ $Name: not supported by cvs2svn $12 * @date $Date: 2005-03- 29 22:14:48 $11 * @version $Revision: 1.3 $ $Name: not supported by cvs2svn $ 12 * @date $Date: 2005-03-30 07:03:48 $ 13 13 * 14 14 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 24 24 #include <limits.h> 25 25 #include <stdlib.h> 26 #include <string.h> 26 27 27 28 #include "psDB.h" 28 29 #include "psTest.h" 29 30 #include "pslib.h" 31 32 #define STR_1 "hello world!" 33 #define STR_2 "foobar" 34 #define S32_1 1974 35 #define S32_2 -18 36 #define F32_1 3.14159 37 #define F32_2 3.33 38 #define F64_1 2.7182818 39 #define F64_2 1.23456789 30 40 31 41 static psDB *_init_psDB( void ); … … 40 50 static psMetadata *_get_where( void ); 41 51 static psMetadata *_get_update_values(const char *val0, psS32 val1, psF32 val2, psF64 val3); 52 static void _print_row( psMetadata *row ); 42 53 43 54 //static psS32 TPDBCreate( void ); … … 157 168 { 158 169 return _get_RowMetadata( 159 "key_string", "comment-string", "hello world!",160 "key_s32", "comment-s32", 1974,161 "key_f32", "comment-f32", 3.14159,162 "key_f64", "comment-f64", 2.71828);170 "key_string", "comment-string", STR_1, 171 "key_s32", "comment-s32", S32_1, 172 "key_f32", "comment-f32", F32_1, 173 "key_f64", "comment-f64", F64_1); 163 174 } 164 175 165 176 psMetadata *_get_where( void ) 166 177 { 167 return _get_RowMetadata( 168 NULL, NULL, NULL, 169 "key_s32", "comment-s32", 1974, 170 "key_f32", "comment-f32", 3.14159, 171 "key_f64", "comment-f64", 2.71828); 178 psMetadata *md = NULL; 179 psMetadataItem *s32=NULL; 180 181 md = psMetadataAlloc(); 182 if (md == NULL) { 183 psError(PS_ERR_UNKNOWN, true, "could not create psMetadata in %s!", __func__ ); 184 return NULL; 185 } 186 s32 = psMetadataItemAllocS32("key_s32", "", S32_1); 187 if (s32 == NULL) { 188 psError(PS_ERR_UNKNOWN, true, "could not create psMetadataItem in %s!", __func__ ); 189 return NULL; 190 } 191 if (!psMetadataAddItem(md, s32, 0, 0)) { 192 psError(PS_ERR_UNKNOWN, true, "could not add psMetadataItem(s) to psMetadata in %s!", __func__ ); 193 return NULL; 194 } 195 196 psFree(s32); 197 return md; 172 198 } 173 199 … … 175 201 { 176 202 return _get_RowMetadataValues(val0, val1, val2, val3); 203 } 204 205 void _print_row( psMetadata *row ) 206 { 207 psMetadataIterator *iter=NULL; 208 psMetadataItem *item=NULL; 209 210 iter = psMetadataIteratorAlloc(row, 0, NULL); 211 while ((item = psMetadataGetAndIncrement(iter)) != NULL) { 212 if (item->type == PS_META_STR) { 213 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%s]\n", item->name, item->data.V ); 214 } else if (item->type == PS_META_S32) { 215 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%d]\n", item->name, item->data.S32 ); 216 } else if (item->type == PS_META_F32) { 217 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%g]\n", item->name, item->data.F32 ); 218 } else if (item->type == PS_META_F64) { 219 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%g]\n", item->name, item->data.F64 ); 220 } 221 } 222 223 psFree(iter); 177 224 } 178 225 … … 213 260 } 214 261 215 psLogMsg( __func__, PS_LOG_INFO, "psDBChange shall change to a new newtest database.\n" );262 psLogMsg( __func__, PS_LOG_INFO, "psDBChange shall change to a new test database.\n" ); 216 263 217 264 failed = ! psDBChange(dbh, dbname); … … 254 301 psDB *dbh = NULL; 255 302 const char* table = "table2"; 256 psMetadata * md = _get_CreateTableMetadata();303 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 257 304 258 305 dbh = _init_psDB(); … … 266 313 if (!failed) { 267 314 failed = ! psDBDropTable(dbh, table); 315 316 // insert should fail ... 317 psLogMsg( __func__, PS_LOG_INFO, "psDBDropTable: insert should fail here...\n" ); 318 row = _get_row(); 319 if (psDBInsertOneRow(dbh, table, row)) { 320 psLogMsg( __func__, PS_LOG_INFO, "oops, insert unexpectedly succeeded!\n" ); 321 failed = 1; 322 } 323 psFree(row); 268 324 } 269 325 … … 281 337 const char* table = "table3"; 282 338 psArray *ary = NULL; 283 psMetadata *md = _get_CreateTableMetadata(); 339 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 340 char *ptr=NULL; 284 341 285 342 dbh = _init_psDB(); … … 292 349 failed = ! psDBCreateTable(dbh, table, md); 293 350 if (!failed) { 294 ary = psDBSelectColumn(dbh, table, "key_string", 1); 351 352 row = _get_row(); 353 psDBInsertOneRow(dbh, table, row); 354 psFree(row); 355 356 row = _get_row(); 357 psDBInsertOneRow(dbh, table, row); 358 psFree(row); 359 360 row = _get_row(); 361 psDBInsertOneRow(dbh, table, row); 362 psFree(row); 363 364 ary = psDBSelectColumn(dbh, table, "key_string", 0); 295 365 if (ary == NULL) { 296 366 failed = 1; 297 367 } else { 368 ptr = psArrayGet(ary, 0); 369 psLogMsg( __func__, PS_LOG_INFO, "psDBSelectColumn: [%s]\n", ptr ); 370 371 ptr = psArrayGet(ary, 1); 372 psLogMsg( __func__, PS_LOG_INFO, "psDBSelectColumn: [%s]\n", ptr ); 373 374 ptr = psArrayGet(ary, 2); 375 psLogMsg( __func__, PS_LOG_INFO, "psDBSelectColumn: [%s]\n", ptr ); 376 377 if (strcmp(ptr, STR_1)) { 378 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected string output!\n" ); 379 failed = 1; 380 } else { 381 psLogMsg( __func__, PS_LOG_INFO, "found expected string output.\n" ); 382 } 383 298 384 psFree(ary); 299 385 } … … 314 400 const char* table = "table4"; 315 401 psVector *vec = NULL; 316 psMetadata * md = _get_CreateTableMetadata();402 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 317 403 318 404 dbh = _init_psDB(); … … 325 411 failed = ! psDBCreateTable(dbh, table, md); 326 412 if (!failed) { 327 vec = psDBSelectColumnNum(dbh, table, "key_string", PS_TYPE_PTR, 1); 413 414 row = _get_row(); 415 psDBInsertOneRow(dbh, table, row); 416 psFree(row); 417 418 row = _get_row(); 419 psDBInsertOneRow(dbh, table, row); 420 psFree(row); 421 422 row = _get_row(); 423 psDBInsertOneRow(dbh, table, row); 424 psFree(row); 425 426 vec = psDBSelectColumnNum(dbh, table, "key_s32", PS_TYPE_S32, 0); 328 427 if (vec == NULL) { 329 428 failed = 1; 330 429 } else { 430 psLogMsg( __func__, PS_LOG_INFO, "str=[%d]\n", (vec->data.S32)[0] ); 431 psLogMsg( __func__, PS_LOG_INFO, "str=[%d]\n", (vec->data.S32)[1] ); 432 psLogMsg( __func__, PS_LOG_INFO, "str=[%d]\n", (vec->data.S32)[2] ); 433 if ((vec->data.S32)[2] != S32_1) { 434 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected S32 output!\n" ); 435 failed = 1; 436 } else { 437 psLogMsg( __func__, PS_LOG_INFO, "found expected S32 output.\n" ); 438 } 331 439 psFree(vec); 332 440 } … … 348 456 psArray *ary = NULL; 349 457 psMetadata *where=NULL, *row=NULL, *md = _get_CreateTableMetadata(); 458 psMetadataItem *item = NULL; 350 459 351 460 dbh = _init_psDB(); … … 378 487 failed = 1; 379 488 } else { 489 _print_row((psMetadata*)psArrayGet(ary, 0)); 490 _print_row((psMetadata*)psArrayGet(ary, 1)); 491 row = (psMetadata*)psArrayGet(ary, 2); 492 _print_row(row); 493 494 item = psMetadataLookup(row, "key_s32"); 495 if ((item == NULL) || (item->data.S32 != S32_1)) { 496 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 497 failed = 1; 498 } else { 499 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 500 } 501 380 502 psFree(ary); 381 503 } … … 427 549 psArray *rowSet = NULL; 428 550 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 551 psMetadataItem *item=NULL; 429 552 430 553 dbh = _init_psDB(); … … 454 577 failed = ! psDBInsertRows(dbh, table, rowSet); 455 578 psFree(rowSet); 579 580 // extra checks ... 581 rowSet = psDBDumpRows(dbh, table); 582 if (rowSet == NULL) { 583 failed = 1; 584 } else { 585 _print_row((psMetadata*)psArrayGet(rowSet, 0)); 586 _print_row((psMetadata*)psArrayGet(rowSet, 1)); 587 row = (psMetadata*)psArrayGet(rowSet, 2); 588 _print_row(row); 589 590 item = psMetadataLookup(row, "key_s32"); 591 if ((item == NULL) || (item->data.S32 != S32_1)) { 592 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 593 failed = 1; 594 } else { 595 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 596 } 597 598 psFree(rowSet); 599 } 456 600 457 601 psDBDropTable(dbh, table); … … 472 616 psArray *ary = NULL; 473 617 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 618 psMetadataItem *item=NULL; 474 619 475 620 dbh = _init_psDB(); … … 500 645 failed = 1; 501 646 } else { 647 648 _print_row((psMetadata*)psArrayGet(ary, 0)); 649 _print_row((psMetadata*)psArrayGet(ary, 1)); 650 row = (psMetadata*)psArrayGet(ary, 2); 651 _print_row(row); 652 653 item = psMetadataLookup(row, "key_s32"); 654 if ((item == NULL) || (item->data.S32 != S32_1)) { 655 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 656 failed = 1; 657 } else { 658 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 659 } 660 502 661 psFree(ary); 503 662 } … … 534 693 failed = 1; 535 694 } else { 695 _print_row(meta); 536 696 psFree(meta); 537 697 } … … 551 711 psDB *dbh = NULL; 552 712 const char* table = "table10"; 553 psArray * rowSet =NULL;713 psArray *ary=NULL, *rowSet=NULL; 554 714 psMetadata *row=NULL, *where=NULL, *updates=NULL, *md = _get_CreateTableMetadata(); 715 psMetadataItem *item=NULL; 555 716 556 717 dbh = _init_psDB(); … … 581 742 if (!failed) { 582 743 where = _get_where(); 583 updates = _get_update_values( "foobar", -1, 3.3333, 1234.5);744 updates = _get_update_values(STR_2, S32_2, F32_2, F64_2); 584 745 failed = (psDBUpdateRows(dbh, table, where, updates) < 0); 746 747 ary = psDBDumpRows(dbh, table); 748 if (ary == NULL) { 749 failed = 1; 750 } else { 751 752 _print_row((psMetadata*)psArrayGet(ary, 0)); 753 _print_row((psMetadata*)psArrayGet(ary, 1)); 754 row = (psMetadata*)psArrayGet(ary, 2); 755 _print_row(row); 756 757 item = psMetadataLookup(row, "key_s32"); 758 if ((item == NULL) || (item->data.S32 != S32_2)) { 759 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 760 failed = 1; 761 } else { 762 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 763 } 764 765 psFree(ary); 766 } 767 585 768 psFree(updates); 586 769 psFree(where); … … 602 785 psDB *dbh = NULL; 603 786 const char* table = "table10"; 604 psArray * rowSet =NULL;787 psArray *ary=NULL, *rowSet=NULL; 605 788 psMetadata *where=NULL, *row=NULL, *md = _get_CreateTableMetadata(); 606 789 … … 633 816 where = _get_where(); 634 817 failed = (psDBDeleteRows(dbh, table, where) < 0); 818 819 ary = psDBDumpRows(dbh, table); 820 if (ary == NULL) { 821 failed = 1; 822 } else { 823 if (ary->n > 0) { 824 psLogMsg( __func__, PS_LOG_INFO, "oops, did not delete stuff!\n" ); 825 failed = 1; 826 } else { 827 psLogMsg( __func__, PS_LOG_INFO, "found expected empty table.\n" ); 828 } 829 830 psFree(ary); 831 } 832 635 833 psFree(where); 636 834 } -
trunk/psLib/test/dataIO/tst_psDB.c
r3545 r3561 9 9 * @author Aaron Culliney, MHPCC 10 10 * 11 * @version $Revision: 1. 2$ $Name: not supported by cvs2svn $12 * @date $Date: 2005-03- 29 22:14:48 $11 * @version $Revision: 1.3 $ $Name: not supported by cvs2svn $ 12 * @date $Date: 2005-03-30 07:03:48 $ 13 13 * 14 14 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 24 24 #include <limits.h> 25 25 #include <stdlib.h> 26 #include <string.h> 26 27 27 28 #include "psDB.h" 28 29 #include "psTest.h" 29 30 #include "pslib.h" 31 32 #define STR_1 "hello world!" 33 #define STR_2 "foobar" 34 #define S32_1 1974 35 #define S32_2 -18 36 #define F32_1 3.14159 37 #define F32_2 3.33 38 #define F64_1 2.7182818 39 #define F64_2 1.23456789 30 40 31 41 static psDB *_init_psDB( void ); … … 40 50 static psMetadata *_get_where( void ); 41 51 static psMetadata *_get_update_values(const char *val0, psS32 val1, psF32 val2, psF64 val3); 52 static void _print_row( psMetadata *row ); 42 53 43 54 //static psS32 TPDBCreate( void ); … … 157 168 { 158 169 return _get_RowMetadata( 159 "key_string", "comment-string", "hello world!",160 "key_s32", "comment-s32", 1974,161 "key_f32", "comment-f32", 3.14159,162 "key_f64", "comment-f64", 2.71828);170 "key_string", "comment-string", STR_1, 171 "key_s32", "comment-s32", S32_1, 172 "key_f32", "comment-f32", F32_1, 173 "key_f64", "comment-f64", F64_1); 163 174 } 164 175 165 176 psMetadata *_get_where( void ) 166 177 { 167 return _get_RowMetadata( 168 NULL, NULL, NULL, 169 "key_s32", "comment-s32", 1974, 170 "key_f32", "comment-f32", 3.14159, 171 "key_f64", "comment-f64", 2.71828); 178 psMetadata *md = NULL; 179 psMetadataItem *s32=NULL; 180 181 md = psMetadataAlloc(); 182 if (md == NULL) { 183 psError(PS_ERR_UNKNOWN, true, "could not create psMetadata in %s!", __func__ ); 184 return NULL; 185 } 186 s32 = psMetadataItemAllocS32("key_s32", "", S32_1); 187 if (s32 == NULL) { 188 psError(PS_ERR_UNKNOWN, true, "could not create psMetadataItem in %s!", __func__ ); 189 return NULL; 190 } 191 if (!psMetadataAddItem(md, s32, 0, 0)) { 192 psError(PS_ERR_UNKNOWN, true, "could not add psMetadataItem(s) to psMetadata in %s!", __func__ ); 193 return NULL; 194 } 195 196 psFree(s32); 197 return md; 172 198 } 173 199 … … 175 201 { 176 202 return _get_RowMetadataValues(val0, val1, val2, val3); 203 } 204 205 void _print_row( psMetadata *row ) 206 { 207 psMetadataIterator *iter=NULL; 208 psMetadataItem *item=NULL; 209 210 iter = psMetadataIteratorAlloc(row, 0, NULL); 211 while ((item = psMetadataGetAndIncrement(iter)) != NULL) { 212 if (item->type == PS_META_STR) { 213 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%s]\n", item->name, item->data.V ); 214 } else if (item->type == PS_META_S32) { 215 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%d]\n", item->name, item->data.S32 ); 216 } else if (item->type == PS_META_F32) { 217 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%g]\n", item->name, item->data.F32 ); 218 } else if (item->type == PS_META_F64) { 219 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%g]\n", item->name, item->data.F64 ); 220 } 221 } 222 223 psFree(iter); 177 224 } 178 225 … … 213 260 } 214 261 215 psLogMsg( __func__, PS_LOG_INFO, "psDBChange shall change to a new newtest database.\n" );262 psLogMsg( __func__, PS_LOG_INFO, "psDBChange shall change to a new test database.\n" ); 216 263 217 264 failed = ! psDBChange(dbh, dbname); … … 254 301 psDB *dbh = NULL; 255 302 const char* table = "table2"; 256 psMetadata * md = _get_CreateTableMetadata();303 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 257 304 258 305 dbh = _init_psDB(); … … 266 313 if (!failed) { 267 314 failed = ! psDBDropTable(dbh, table); 315 316 // insert should fail ... 317 psLogMsg( __func__, PS_LOG_INFO, "psDBDropTable: insert should fail here...\n" ); 318 row = _get_row(); 319 if (psDBInsertOneRow(dbh, table, row)) { 320 psLogMsg( __func__, PS_LOG_INFO, "oops, insert unexpectedly succeeded!\n" ); 321 failed = 1; 322 } 323 psFree(row); 268 324 } 269 325 … … 281 337 const char* table = "table3"; 282 338 psArray *ary = NULL; 283 psMetadata *md = _get_CreateTableMetadata(); 339 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 340 char *ptr=NULL; 284 341 285 342 dbh = _init_psDB(); … … 292 349 failed = ! psDBCreateTable(dbh, table, md); 293 350 if (!failed) { 294 ary = psDBSelectColumn(dbh, table, "key_string", 1); 351 352 row = _get_row(); 353 psDBInsertOneRow(dbh, table, row); 354 psFree(row); 355 356 row = _get_row(); 357 psDBInsertOneRow(dbh, table, row); 358 psFree(row); 359 360 row = _get_row(); 361 psDBInsertOneRow(dbh, table, row); 362 psFree(row); 363 364 ary = psDBSelectColumn(dbh, table, "key_string", 0); 295 365 if (ary == NULL) { 296 366 failed = 1; 297 367 } else { 368 ptr = psArrayGet(ary, 0); 369 psLogMsg( __func__, PS_LOG_INFO, "psDBSelectColumn: [%s]\n", ptr ); 370 371 ptr = psArrayGet(ary, 1); 372 psLogMsg( __func__, PS_LOG_INFO, "psDBSelectColumn: [%s]\n", ptr ); 373 374 ptr = psArrayGet(ary, 2); 375 psLogMsg( __func__, PS_LOG_INFO, "psDBSelectColumn: [%s]\n", ptr ); 376 377 if (strcmp(ptr, STR_1)) { 378 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected string output!\n" ); 379 failed = 1; 380 } else { 381 psLogMsg( __func__, PS_LOG_INFO, "found expected string output.\n" ); 382 } 383 298 384 psFree(ary); 299 385 } … … 314 400 const char* table = "table4"; 315 401 psVector *vec = NULL; 316 psMetadata * md = _get_CreateTableMetadata();402 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 317 403 318 404 dbh = _init_psDB(); … … 325 411 failed = ! psDBCreateTable(dbh, table, md); 326 412 if (!failed) { 327 vec = psDBSelectColumnNum(dbh, table, "key_string", PS_TYPE_PTR, 1); 413 414 row = _get_row(); 415 psDBInsertOneRow(dbh, table, row); 416 psFree(row); 417 418 row = _get_row(); 419 psDBInsertOneRow(dbh, table, row); 420 psFree(row); 421 422 row = _get_row(); 423 psDBInsertOneRow(dbh, table, row); 424 psFree(row); 425 426 vec = psDBSelectColumnNum(dbh, table, "key_s32", PS_TYPE_S32, 0); 328 427 if (vec == NULL) { 329 428 failed = 1; 330 429 } else { 430 psLogMsg( __func__, PS_LOG_INFO, "str=[%d]\n", (vec->data.S32)[0] ); 431 psLogMsg( __func__, PS_LOG_INFO, "str=[%d]\n", (vec->data.S32)[1] ); 432 psLogMsg( __func__, PS_LOG_INFO, "str=[%d]\n", (vec->data.S32)[2] ); 433 if ((vec->data.S32)[2] != S32_1) { 434 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected S32 output!\n" ); 435 failed = 1; 436 } else { 437 psLogMsg( __func__, PS_LOG_INFO, "found expected S32 output.\n" ); 438 } 331 439 psFree(vec); 332 440 } … … 348 456 psArray *ary = NULL; 349 457 psMetadata *where=NULL, *row=NULL, *md = _get_CreateTableMetadata(); 458 psMetadataItem *item = NULL; 350 459 351 460 dbh = _init_psDB(); … … 378 487 failed = 1; 379 488 } else { 489 _print_row((psMetadata*)psArrayGet(ary, 0)); 490 _print_row((psMetadata*)psArrayGet(ary, 1)); 491 row = (psMetadata*)psArrayGet(ary, 2); 492 _print_row(row); 493 494 item = psMetadataLookup(row, "key_s32"); 495 if ((item == NULL) || (item->data.S32 != S32_1)) { 496 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 497 failed = 1; 498 } else { 499 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 500 } 501 380 502 psFree(ary); 381 503 } … … 427 549 psArray *rowSet = NULL; 428 550 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 551 psMetadataItem *item=NULL; 429 552 430 553 dbh = _init_psDB(); … … 454 577 failed = ! psDBInsertRows(dbh, table, rowSet); 455 578 psFree(rowSet); 579 580 // extra checks ... 581 rowSet = psDBDumpRows(dbh, table); 582 if (rowSet == NULL) { 583 failed = 1; 584 } else { 585 _print_row((psMetadata*)psArrayGet(rowSet, 0)); 586 _print_row((psMetadata*)psArrayGet(rowSet, 1)); 587 row = (psMetadata*)psArrayGet(rowSet, 2); 588 _print_row(row); 589 590 item = psMetadataLookup(row, "key_s32"); 591 if ((item == NULL) || (item->data.S32 != S32_1)) { 592 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 593 failed = 1; 594 } else { 595 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 596 } 597 598 psFree(rowSet); 599 } 456 600 457 601 psDBDropTable(dbh, table); … … 472 616 psArray *ary = NULL; 473 617 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 618 psMetadataItem *item=NULL; 474 619 475 620 dbh = _init_psDB(); … … 500 645 failed = 1; 501 646 } else { 647 648 _print_row((psMetadata*)psArrayGet(ary, 0)); 649 _print_row((psMetadata*)psArrayGet(ary, 1)); 650 row = (psMetadata*)psArrayGet(ary, 2); 651 _print_row(row); 652 653 item = psMetadataLookup(row, "key_s32"); 654 if ((item == NULL) || (item->data.S32 != S32_1)) { 655 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 656 failed = 1; 657 } else { 658 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 659 } 660 502 661 psFree(ary); 503 662 } … … 534 693 failed = 1; 535 694 } else { 695 _print_row(meta); 536 696 psFree(meta); 537 697 } … … 551 711 psDB *dbh = NULL; 552 712 const char* table = "table10"; 553 psArray * rowSet =NULL;713 psArray *ary=NULL, *rowSet=NULL; 554 714 psMetadata *row=NULL, *where=NULL, *updates=NULL, *md = _get_CreateTableMetadata(); 715 psMetadataItem *item=NULL; 555 716 556 717 dbh = _init_psDB(); … … 581 742 if (!failed) { 582 743 where = _get_where(); 583 updates = _get_update_values( "foobar", -1, 3.3333, 1234.5);744 updates = _get_update_values(STR_2, S32_2, F32_2, F64_2); 584 745 failed = (psDBUpdateRows(dbh, table, where, updates) < 0); 746 747 ary = psDBDumpRows(dbh, table); 748 if (ary == NULL) { 749 failed = 1; 750 } else { 751 752 _print_row((psMetadata*)psArrayGet(ary, 0)); 753 _print_row((psMetadata*)psArrayGet(ary, 1)); 754 row = (psMetadata*)psArrayGet(ary, 2); 755 _print_row(row); 756 757 item = psMetadataLookup(row, "key_s32"); 758 if ((item == NULL) || (item->data.S32 != S32_2)) { 759 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 760 failed = 1; 761 } else { 762 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 763 } 764 765 psFree(ary); 766 } 767 585 768 psFree(updates); 586 769 psFree(where); … … 602 785 psDB *dbh = NULL; 603 786 const char* table = "table10"; 604 psArray * rowSet =NULL;787 psArray *ary=NULL, *rowSet=NULL; 605 788 psMetadata *where=NULL, *row=NULL, *md = _get_CreateTableMetadata(); 606 789 … … 633 816 where = _get_where(); 634 817 failed = (psDBDeleteRows(dbh, table, where) < 0); 818 819 ary = psDBDumpRows(dbh, table); 820 if (ary == NULL) { 821 failed = 1; 822 } else { 823 if (ary->n > 0) { 824 psLogMsg( __func__, PS_LOG_INFO, "oops, did not delete stuff!\n" ); 825 failed = 1; 826 } else { 827 psLogMsg( __func__, PS_LOG_INFO, "found expected empty table.\n" ); 828 } 829 830 psFree(ary); 831 } 832 635 833 psFree(where); 636 834 } -
trunk/psLib/test/fileUtils/tst_psDB.c
r3545 r3561 9 9 * @author Aaron Culliney, MHPCC 10 10 * 11 * @version $Revision: 1. 2$ $Name: not supported by cvs2svn $12 * @date $Date: 2005-03- 29 22:14:48 $11 * @version $Revision: 1.3 $ $Name: not supported by cvs2svn $ 12 * @date $Date: 2005-03-30 07:03:48 $ 13 13 * 14 14 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii … … 24 24 #include <limits.h> 25 25 #include <stdlib.h> 26 #include <string.h> 26 27 27 28 #include "psDB.h" 28 29 #include "psTest.h" 29 30 #include "pslib.h" 31 32 #define STR_1 "hello world!" 33 #define STR_2 "foobar" 34 #define S32_1 1974 35 #define S32_2 -18 36 #define F32_1 3.14159 37 #define F32_2 3.33 38 #define F64_1 2.7182818 39 #define F64_2 1.23456789 30 40 31 41 static psDB *_init_psDB( void ); … … 40 50 static psMetadata *_get_where( void ); 41 51 static psMetadata *_get_update_values(const char *val0, psS32 val1, psF32 val2, psF64 val3); 52 static void _print_row( psMetadata *row ); 42 53 43 54 //static psS32 TPDBCreate( void ); … … 157 168 { 158 169 return _get_RowMetadata( 159 "key_string", "comment-string", "hello world!",160 "key_s32", "comment-s32", 1974,161 "key_f32", "comment-f32", 3.14159,162 "key_f64", "comment-f64", 2.71828);170 "key_string", "comment-string", STR_1, 171 "key_s32", "comment-s32", S32_1, 172 "key_f32", "comment-f32", F32_1, 173 "key_f64", "comment-f64", F64_1); 163 174 } 164 175 165 176 psMetadata *_get_where( void ) 166 177 { 167 return _get_RowMetadata( 168 NULL, NULL, NULL, 169 "key_s32", "comment-s32", 1974, 170 "key_f32", "comment-f32", 3.14159, 171 "key_f64", "comment-f64", 2.71828); 178 psMetadata *md = NULL; 179 psMetadataItem *s32=NULL; 180 181 md = psMetadataAlloc(); 182 if (md == NULL) { 183 psError(PS_ERR_UNKNOWN, true, "could not create psMetadata in %s!", __func__ ); 184 return NULL; 185 } 186 s32 = psMetadataItemAllocS32("key_s32", "", S32_1); 187 if (s32 == NULL) { 188 psError(PS_ERR_UNKNOWN, true, "could not create psMetadataItem in %s!", __func__ ); 189 return NULL; 190 } 191 if (!psMetadataAddItem(md, s32, 0, 0)) { 192 psError(PS_ERR_UNKNOWN, true, "could not add psMetadataItem(s) to psMetadata in %s!", __func__ ); 193 return NULL; 194 } 195 196 psFree(s32); 197 return md; 172 198 } 173 199 … … 175 201 { 176 202 return _get_RowMetadataValues(val0, val1, val2, val3); 203 } 204 205 void _print_row( psMetadata *row ) 206 { 207 psMetadataIterator *iter=NULL; 208 psMetadataItem *item=NULL; 209 210 iter = psMetadataIteratorAlloc(row, 0, NULL); 211 while ((item = psMetadataGetAndIncrement(iter)) != NULL) { 212 if (item->type == PS_META_STR) { 213 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%s]\n", item->name, item->data.V ); 214 } else if (item->type == PS_META_S32) { 215 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%d]\n", item->name, item->data.S32 ); 216 } else if (item->type == PS_META_F32) { 217 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%g]\n", item->name, item->data.F32 ); 218 } else if (item->type == PS_META_F64) { 219 psLogMsg( __func__, PS_LOG_INFO, "[%s]=[%g]\n", item->name, item->data.F64 ); 220 } 221 } 222 223 psFree(iter); 177 224 } 178 225 … … 213 260 } 214 261 215 psLogMsg( __func__, PS_LOG_INFO, "psDBChange shall change to a new newtest database.\n" );262 psLogMsg( __func__, PS_LOG_INFO, "psDBChange shall change to a new test database.\n" ); 216 263 217 264 failed = ! psDBChange(dbh, dbname); … … 254 301 psDB *dbh = NULL; 255 302 const char* table = "table2"; 256 psMetadata * md = _get_CreateTableMetadata();303 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 257 304 258 305 dbh = _init_psDB(); … … 266 313 if (!failed) { 267 314 failed = ! psDBDropTable(dbh, table); 315 316 // insert should fail ... 317 psLogMsg( __func__, PS_LOG_INFO, "psDBDropTable: insert should fail here...\n" ); 318 row = _get_row(); 319 if (psDBInsertOneRow(dbh, table, row)) { 320 psLogMsg( __func__, PS_LOG_INFO, "oops, insert unexpectedly succeeded!\n" ); 321 failed = 1; 322 } 323 psFree(row); 268 324 } 269 325 … … 281 337 const char* table = "table3"; 282 338 psArray *ary = NULL; 283 psMetadata *md = _get_CreateTableMetadata(); 339 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 340 char *ptr=NULL; 284 341 285 342 dbh = _init_psDB(); … … 292 349 failed = ! psDBCreateTable(dbh, table, md); 293 350 if (!failed) { 294 ary = psDBSelectColumn(dbh, table, "key_string", 1); 351 352 row = _get_row(); 353 psDBInsertOneRow(dbh, table, row); 354 psFree(row); 355 356 row = _get_row(); 357 psDBInsertOneRow(dbh, table, row); 358 psFree(row); 359 360 row = _get_row(); 361 psDBInsertOneRow(dbh, table, row); 362 psFree(row); 363 364 ary = psDBSelectColumn(dbh, table, "key_string", 0); 295 365 if (ary == NULL) { 296 366 failed = 1; 297 367 } else { 368 ptr = psArrayGet(ary, 0); 369 psLogMsg( __func__, PS_LOG_INFO, "psDBSelectColumn: [%s]\n", ptr ); 370 371 ptr = psArrayGet(ary, 1); 372 psLogMsg( __func__, PS_LOG_INFO, "psDBSelectColumn: [%s]\n", ptr ); 373 374 ptr = psArrayGet(ary, 2); 375 psLogMsg( __func__, PS_LOG_INFO, "psDBSelectColumn: [%s]\n", ptr ); 376 377 if (strcmp(ptr, STR_1)) { 378 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected string output!\n" ); 379 failed = 1; 380 } else { 381 psLogMsg( __func__, PS_LOG_INFO, "found expected string output.\n" ); 382 } 383 298 384 psFree(ary); 299 385 } … … 314 400 const char* table = "table4"; 315 401 psVector *vec = NULL; 316 psMetadata * md = _get_CreateTableMetadata();402 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 317 403 318 404 dbh = _init_psDB(); … … 325 411 failed = ! psDBCreateTable(dbh, table, md); 326 412 if (!failed) { 327 vec = psDBSelectColumnNum(dbh, table, "key_string", PS_TYPE_PTR, 1); 413 414 row = _get_row(); 415 psDBInsertOneRow(dbh, table, row); 416 psFree(row); 417 418 row = _get_row(); 419 psDBInsertOneRow(dbh, table, row); 420 psFree(row); 421 422 row = _get_row(); 423 psDBInsertOneRow(dbh, table, row); 424 psFree(row); 425 426 vec = psDBSelectColumnNum(dbh, table, "key_s32", PS_TYPE_S32, 0); 328 427 if (vec == NULL) { 329 428 failed = 1; 330 429 } else { 430 psLogMsg( __func__, PS_LOG_INFO, "str=[%d]\n", (vec->data.S32)[0] ); 431 psLogMsg( __func__, PS_LOG_INFO, "str=[%d]\n", (vec->data.S32)[1] ); 432 psLogMsg( __func__, PS_LOG_INFO, "str=[%d]\n", (vec->data.S32)[2] ); 433 if ((vec->data.S32)[2] != S32_1) { 434 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected S32 output!\n" ); 435 failed = 1; 436 } else { 437 psLogMsg( __func__, PS_LOG_INFO, "found expected S32 output.\n" ); 438 } 331 439 psFree(vec); 332 440 } … … 348 456 psArray *ary = NULL; 349 457 psMetadata *where=NULL, *row=NULL, *md = _get_CreateTableMetadata(); 458 psMetadataItem *item = NULL; 350 459 351 460 dbh = _init_psDB(); … … 378 487 failed = 1; 379 488 } else { 489 _print_row((psMetadata*)psArrayGet(ary, 0)); 490 _print_row((psMetadata*)psArrayGet(ary, 1)); 491 row = (psMetadata*)psArrayGet(ary, 2); 492 _print_row(row); 493 494 item = psMetadataLookup(row, "key_s32"); 495 if ((item == NULL) || (item->data.S32 != S32_1)) { 496 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 497 failed = 1; 498 } else { 499 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 500 } 501 380 502 psFree(ary); 381 503 } … … 427 549 psArray *rowSet = NULL; 428 550 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 551 psMetadataItem *item=NULL; 429 552 430 553 dbh = _init_psDB(); … … 454 577 failed = ! psDBInsertRows(dbh, table, rowSet); 455 578 psFree(rowSet); 579 580 // extra checks ... 581 rowSet = psDBDumpRows(dbh, table); 582 if (rowSet == NULL) { 583 failed = 1; 584 } else { 585 _print_row((psMetadata*)psArrayGet(rowSet, 0)); 586 _print_row((psMetadata*)psArrayGet(rowSet, 1)); 587 row = (psMetadata*)psArrayGet(rowSet, 2); 588 _print_row(row); 589 590 item = psMetadataLookup(row, "key_s32"); 591 if ((item == NULL) || (item->data.S32 != S32_1)) { 592 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 593 failed = 1; 594 } else { 595 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 596 } 597 598 psFree(rowSet); 599 } 456 600 457 601 psDBDropTable(dbh, table); … … 472 616 psArray *ary = NULL; 473 617 psMetadata *row=NULL, *md = _get_CreateTableMetadata(); 618 psMetadataItem *item=NULL; 474 619 475 620 dbh = _init_psDB(); … … 500 645 failed = 1; 501 646 } else { 647 648 _print_row((psMetadata*)psArrayGet(ary, 0)); 649 _print_row((psMetadata*)psArrayGet(ary, 1)); 650 row = (psMetadata*)psArrayGet(ary, 2); 651 _print_row(row); 652 653 item = psMetadataLookup(row, "key_s32"); 654 if ((item == NULL) || (item->data.S32 != S32_1)) { 655 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 656 failed = 1; 657 } else { 658 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 659 } 660 502 661 psFree(ary); 503 662 } … … 534 693 failed = 1; 535 694 } else { 695 _print_row(meta); 536 696 psFree(meta); 537 697 } … … 551 711 psDB *dbh = NULL; 552 712 const char* table = "table10"; 553 psArray * rowSet =NULL;713 psArray *ary=NULL, *rowSet=NULL; 554 714 psMetadata *row=NULL, *where=NULL, *updates=NULL, *md = _get_CreateTableMetadata(); 715 psMetadataItem *item=NULL; 555 716 556 717 dbh = _init_psDB(); … … 581 742 if (!failed) { 582 743 where = _get_where(); 583 updates = _get_update_values( "foobar", -1, 3.3333, 1234.5);744 updates = _get_update_values(STR_2, S32_2, F32_2, F64_2); 584 745 failed = (psDBUpdateRows(dbh, table, where, updates) < 0); 746 747 ary = psDBDumpRows(dbh, table); 748 if (ary == NULL) { 749 failed = 1; 750 } else { 751 752 _print_row((psMetadata*)psArrayGet(ary, 0)); 753 _print_row((psMetadata*)psArrayGet(ary, 1)); 754 row = (psMetadata*)psArrayGet(ary, 2); 755 _print_row(row); 756 757 item = psMetadataLookup(row, "key_s32"); 758 if ((item == NULL) || (item->data.S32 != S32_2)) { 759 psLogMsg( __func__, PS_LOG_INFO, "oops, did not find expected output!\n" ); 760 failed = 1; 761 } else { 762 psLogMsg( __func__, PS_LOG_INFO, "found expected output.\n" ); 763 } 764 765 psFree(ary); 766 } 767 585 768 psFree(updates); 586 769 psFree(where); … … 602 785 psDB *dbh = NULL; 603 786 const char* table = "table10"; 604 psArray * rowSet =NULL;787 psArray *ary=NULL, *rowSet=NULL; 605 788 psMetadata *where=NULL, *row=NULL, *md = _get_CreateTableMetadata(); 606 789 … … 633 816 where = _get_where(); 634 817 failed = (psDBDeleteRows(dbh, table, where) < 0); 818 819 ary = psDBDumpRows(dbh, table); 820 if (ary == NULL) { 821 failed = 1; 822 } else { 823 if (ary->n > 0) { 824 psLogMsg( __func__, PS_LOG_INFO, "oops, did not delete stuff!\n" ); 825 failed = 1; 826 } else { 827 psLogMsg( __func__, PS_LOG_INFO, "found expected empty table.\n" ); 828 } 829 830 psFree(ary); 831 } 832 635 833 psFree(where); 636 834 }
Note:
See TracChangeset
for help on using the changeset viewer.
