PackageDescription: StoreForGlorpReplicationTest


Store For Glorp Replication Test

Last published: May 20, 2011 by 'trobinson'

Defines 2 Classes
Extends 7 Classes


This package contains tests for replication of pundles between Store databases using the StoreForGlorp framework. These tests need the following to run.

1) Administrative access to a target Store database, in which to publish and replicate bundles. This target database will be emptied at the start of many tests so must contain nothing of value. It must be listed in #trashableRepositoryNames (which ensures no accidental purging of any other database). If the target database is left in a messy state by a failing test, use testNotReallyJustDeleteEverything to clean it up. The tests are set up to get the target database from #vpnTrashableStore by default; to use a different target database, choose one of the other methods in its protocol, or one you add, to replace it in its caller. Ensure any method(s) you add for your own local database(s) are also added to #trashableRepositoryNames. If Ihe name of the edited connection also names a Store profile in your image, its store login must equal that of the connection (if there is no such named profile, the tests will create one while running, leaving the image repositories unchanged).

2) Ordinary access to a source Store database containing the following bundles and versions
ExportDatabaseTestDataBundle 0.1 and 0.2
ReplicationTestBundle 1.0, 1.1 and 1.2
and packages
BogusPackageForReplication 1.0
ADvance2 7.4_01, 7.3.0, 7.2.0, 7.1.0 and 5i.4 1.1.3.
Wave-Server 7.1 30 through 7.1 42
The test_store database contains all these, as do bear and the open repository; any can be used as the source database. However, running all these tests over a network can take time: replicating the required versions of the above packages to a source database local to the image, and using a target database that is also local to the image, is much faster.

The tests are set up to get the source database from #vpnTestStore. To use a different source database, choose one of the other methods in its protocol, or one you add, to replace it in its caller. If Ihe name of the edited connection also names a Store profile in your image, its store login must equal that of the connection (if there is no such named profile, the tests will create one while running, leaving the image repositories unchanged).

3) The following must be loaded: SUnit, External, Tools-Debugger; SUnit is in the prereqs, the others are Base VisualWorks and Tools-IDE subpundles that we assume will be present. The bundles named in (2) will be loaded, if not already present, during the tests that need them (and will be left loaded), except Wave-Server, which is never loaded, and ADvance2: if the user loads ADvance2 version 7.4_01 before running the tests, some additional checking is done; if not, the Transcript advises the user that the additional checking was not done.