Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Minor test cleanup. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | sessions |
Files: | files | file ages | folders |
SHA1: |
ac526d98e85c357dc40d7ca401cdf6b8 |
User & Date: | mistachkin 2017-10-12 00:03:47.009 |
Context
2017-10-12
| ||
19:26 | Cleanup and modularize tests in preparation for stream variants. Initial work on stream tests. check-in: c41edbe55e user: mistachkin tags: sessions | |
00:03 | Minor test cleanup. check-in: ac526d98e8 user: mistachkin tags: sessions | |
00:00 | Add tests for LoadDifferencesFromTable and stream-based change set creation. check-in: e3f513c15d user: mistachkin tags: sessions | |
Changes
Changes to Tests/session.eagle.
︙ | ︙ | |||
194 195 196 197 198 199 200 | CREATE TABLE ${databaseName}.t1(x INTEGER PRIMARY KEY, y TEXT); CREATE TABLE ${databaseName}.t2(x INTEGER PRIMARY KEY, y TEXT); }] } ############################################################################### | | | | | 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 | CREATE TABLE ${databaseName}.t1(x INTEGER PRIMARY KEY, y TEXT); CREATE TABLE ${databaseName}.t2(x INTEGER PRIMARY KEY, y TEXT); }] } ############################################################################### proc makeSomeChanges { db table types {rowId ""} {count 5} } { foreach type $types { switch -nocase -- $type { insert { set text [appendArgs "inserted: " [getSomeText false $count]] if {[string is integer -strict $rowId]} then { sql execute $db [subst { INSERT INTO ${table}(x, y) VALUES(?, ?); }] [list param1 Int32 $rowId] [list param2 String $text] } else { sql execute $db [subst { INSERT INTO ${table}(y) VALUES(?); }] [list param1 String $text] } } update { set text [appendArgs "updated: " [getSomeText false $count]] if {[string is integer -strict $rowId]} then { sql execute $db [subst { UPDATE ${table} SET y = ? WHERE x = ?; }] [list param1 String $text] [list param2 Int32 $rowId] } else { sql execute $db [subst { |
︙ | ︙ | |||
341 342 343 344 345 346 347 | set fileName(1) [getChangeSetFileName 1] set fileName(2) [getChangeSetFileName 2] cleanupSomeText } -body { createTheSchema $db main | | | | 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 | set fileName(1) [getChangeSetFileName 1] set fileName(2) [getChangeSetFileName 2] cleanupSomeText } -body { createTheSchema $db main makeSomeChanges $db t1 [list insert insert] set connection [getDbConnection] set session [$connection -alias CreateSession main] $session AttachTable null makeSomeChanges $db t1 [list insert update delete] set rawData [createChangeSetForSession $session] object removeref $rawData set stream(1) [object create -alias \ System.IO.FileStream $fileName(1) Create Write] |
︙ | ︙ | |||
412 413 414 415 416 417 418 | runTest {test session-1.2 {session change set enumeration} -setup { setupDb [set fileName session-1.2.db] cleanupSomeText } -body { createTheSchema $db main | | | | 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 | runTest {test session-1.2 {session change set enumeration} -setup { setupDb [set fileName session-1.2.db] cleanupSomeText } -body { createTheSchema $db main makeSomeChanges $db t1 [list insert insert insert] set connection [getDbConnection] set session [$connection -alias CreateSession main] $session AttachTable null makeSomeChanges $db t1 [list insert update delete] set rawData [createChangeSetForSession $session] object removeref $rawData set changeSet(1) [$connection -alias CreateChangeSet $rawData] set changeSet(2) [$changeSet(1) -alias Invert] |
︙ | ︙ | |||
484 485 486 487 488 489 490 | runTest {test session-1.3 {session enabled/disabled state} -setup { setupDb [set fileName session-1.3.db] cleanupSomeText } -body { createTheSchema $db main | | | | | 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 | runTest {test session-1.3 {session enabled/disabled state} -setup { setupDb [set fileName session-1.3.db] cleanupSomeText } -body { createTheSchema $db main makeSomeChanges $db t1 [list insert] set connection [getDbConnection] set session [$connection -alias CreateSession main] lappend result IsEnabled [$session IsEnabled] $session AttachTable null lappend result IsEnabled [$session IsEnabled] $session SetToDisabled lappend result IsEnabled [$session IsEnabled] makeSomeChanges $db t1 [list insert] lappend result IsEmpty [$session IsEmpty] set rawData [createChangeSetForSession $session] object removeref $rawData lappend result Length [$rawData Length] $session SetToEnabled lappend result IsEnabled [$session IsEnabled] makeSomeChanges $db t1 [list insert] lappend result IsEmpty [$session IsEmpty] set rawData [createChangeSetForSession $session] object removeref $rawData set changeSet(1) [$connection -alias CreateChangeSet $rawData] lappend result [changeSetToString $changeSet(1) false] |
︙ | ︙ | |||
543 544 545 546 547 548 549 | runTest {test session-1.4 {session direct/indirect state} -setup { setupDb [set fileName session-1.4.db] cleanupSomeText } -body { createTheSchema $db main | | | | | 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 | runTest {test session-1.4 {session direct/indirect state} -setup { setupDb [set fileName session-1.4.db] cleanupSomeText } -body { createTheSchema $db main makeSomeChanges $db t1 [list insert] set connection [getDbConnection] set session [$connection -alias CreateSession main] lappend result IsIndirect [$session IsIndirect] $session AttachTable null lappend result IsIndirect [$session IsIndirect] $session SetToIndirect lappend result IsIndirect [$session IsIndirect] makeSomeChanges $db t1 [list insert] lappend result IsEmpty [$session IsEmpty] set rawData [createChangeSetForSession $session] object removeref $rawData $session SetToDirect lappend result IsIndirect [$session IsIndirect] makeSomeChanges $db t1 [list insert] lappend result IsEmpty [$session IsEmpty] set rawData [createChangeSetForSession $session] object removeref $rawData set changeSet(1) [$connection -alias CreateChangeSet $rawData] lappend result [changeSetToString $changeSet(1) false] |
︙ | ︙ | |||
601 602 603 604 605 606 607 | runTest {test session-1.5 {session table filter} -setup { setupDb [set fileName session-1.5.db] cleanupSomeText } -body { createTheSchema $db main | | | | | | | 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 | runTest {test session-1.5 {session table filter} -setup { setupDb [set fileName session-1.5.db] cleanupSomeText } -body { createTheSchema $db main makeSomeChanges $db t1 [list insert] set connection [getDbConnection] set session [$connection -alias CreateSession main] $session -marshalflags +DynamicCallback \ SetTableFilter tableFilterCallbackT1 null makeSomeChanges $db t2 [list insert] lappend result IsEmpty [$session IsEmpty] lappend result MatchT2 [matchSession $connection $session { [$item TableName] eq "t2" }] makeSomeChanges $db t1 [list insert] lappend result IsEmpty [$session IsEmpty] lappend result MatchT1 [matchSession $connection $session { [$item TableName] eq "t1" }] $session SetTableFilter null null makeSomeChanges $db t2 [list insert] lappend result IsEmpty [$session IsEmpty] lappend result MatchT2 [matchSession $connection $session { [$item TableName] eq "t2" }] makeSomeChanges $db t1 [list insert] lappend result IsEmpty [$session IsEmpty] lappend result MatchT1 [matchSession $connection $session { [$item TableName] eq "t1" }] set result |
︙ | ︙ | |||
675 676 677 678 679 680 681 | runTest {test session-1.6 {combine and apply change sets} -setup { setupDb [set fileName session-1.6.db] cleanupSomeText } -body { createTheSchema $db main | | | | | | 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 | runTest {test session-1.6 {combine and apply change sets} -setup { setupDb [set fileName session-1.6.db] cleanupSomeText } -body { createTheSchema $db main makeSomeChanges $db t1 [list insert insert] set connection [getDbConnection] set rawData(1) [captureChangeSetRawData $connection main null { makeSomeChanges $db t1 [list delete] 1 }]; object removeref $rawData(1) makeSomeChanges $db t1 [list insert] 1 set rawData(2) [captureChangeSetRawData $connection main null { makeSomeChanges $db t1 [list insert] }]; object removeref $rawData(2) set changeSet(1) [$connection -alias CreateChangeSet $rawData(1)] set changeSet(2) [$connection -alias CreateChangeSet $rawData(2)] set changeSet(3) [$changeSet(1) -alias CombineWith $changeSet(2)] $changeSet(3) -marshalflags +DynamicCallback Apply conflictCallback null |
︙ | ︙ | |||
739 740 741 742 743 744 745 | runTest {test session-1.7 {differences between tables} -setup { setupDb [set fileName session-1.7.db] cleanupSomeText } -body { createTheSchema $db main | | | | 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 | runTest {test session-1.7 {differences between tables} -setup { setupDb [set fileName session-1.7.db] cleanupSomeText } -body { createTheSchema $db main makeSomeChanges $db t1 [list insert insert] set result [list] lappend result [sql execute -execute reader -format list $db \ {SELECT x, y FROM t1 ORDER BY x;}] createTheSchema $db temp sql execute $db {INSERT INTO temp.t1 SELECT * FROM main.t1;} makeSomeChanges $db temp.t1 [list insert insert] set connection [getDbConnection] set session [$connection -alias CreateSession main] $session AttachTable null $session LoadDifferencesFromTable temp t1 |
︙ | ︙ | |||
777 778 779 780 781 782 783 | } -constraints {eagle command.object monoBug28 command.sql compile.DATA SQLite\ System.Data.SQLite SQLiteInterop\ defineConstant.System.Data.SQLite.INTEROP_SESSION_EXTENSION} -result {{1\ {inserted: Alpha Bravo Charlie Delta Echo} 2 {inserted: Foxtrot Golf Hotel\ India Juliet}} {1 {inserted: Alpha Bravo Charlie Delta Echo} 2 {inserted:\ Foxtrot Golf Hotel India Juliet} 3 {inserted: Kilo Lima Mike November Oscar} 4\ {inserted: Papa Quebec Romeo Sierra Tango}}}} | < < < < < < | 777 778 779 780 781 782 783 784 785 786 787 788 789 790 | } -constraints {eagle command.object monoBug28 command.sql compile.DATA SQLite\ System.Data.SQLite SQLiteInterop\ defineConstant.System.Data.SQLite.INTEROP_SESSION_EXTENSION} -result {{1\ {inserted: Alpha Bravo Charlie Delta Echo} 2 {inserted: Foxtrot Golf Hotel\ India Juliet}} {1 {inserted: Alpha Bravo Charlie Delta Echo} 2 {inserted:\ Foxtrot Golf Hotel India Juliet} 3 {inserted: Kilo Lima Mike November Oscar} 4\ {inserted: Papa Quebec Romeo Sierra Tango}}}} ############################################################################### rename conflictCallback "" rename tableFilterCallbackT1 "" rename createByteArray "" rename arrayToList "" |
︙ | ︙ |