MetaData Sharing
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

1.2 KiB

Notes for developers

Basic setup for testing

The following depends upon a program, entr, to be installed.

First, create an environment:

make env

Then run the tests:

make test

The above command, after running the tests will watch for any modifications to the files, and automatically rerun the tests, making it convient to run in one window, while editing in another.

Managing the db format

Alembic is used to manage upgrades. The following process should be followed when updating the ORM:

  1. Uncomment the orm.Base.metadata.create_all call, and comment out the _handle_migration call a bit later, and disable the test_ tests.
  2. Implement tests for new feature, and make changes to the ORM as needed.
  3. Run the autogen.sh script from medashare to generate the base migration. Modify as needed.
  4. Add a test for the migration to _TestMigrations. This should test by creating an ObjectStore at the previous stage, add representative objects that will test the migration, and then run a migration, and make sure features still work as expected afterward.
  5. Revert changes made in step 1