unitstorm
Introduction
Storm is a fast, small and powerful object-relational mapper. Try it to use in db-aware applications.
Effective unit-testing DB-models needed:
easy access to testing-DB inside testcases
setting up testing-DB before each test (and tear down after)
To help this unitstorm provides class ModelTestCase, that can be used both in unittest and nosetest testing frameworks.
Simple example
from unitstorm import ModelTestCase
from os import path
import models as model # models define somewhere else
class TestMyModel(ModelTestCase):
dburi = 'postgres://test:test@localhost/test'
fixtures = path.join(path.dirname(__file__), 'fixtures')
fixture_setup = 'create.sql', 'filldata.sql'
fixture_teardown = 'drop.sql'
sql_setup = 'INSERT INTO my_model (id, name) VALUES (1, "foo");',\
'INSERT INTO my_model (id, name) VALUES (2, "bar");'
sql_teardown = 'DELETE FROM my_model WHERE id = 1;'
def test_stub(self):
assert self.store.get(model.MyModel, 1).name == "foo"
TODO more description (look sources)
dburi
db
store
fixtures
fixture_setup
fixture_teardown
sql_setup
sql_teardown
Execution order: fixture_setup, sql_setup, test, sql_teardown, fixture_teardown
Legal
unitstorm distributed under terms of GNU LGPL v.2.1. Copyright 2007 - present Vsevolod Balashov.
Links
Source code of unitstorm.
Release files for unitstorm 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| unitstorm-0.1.1.tar.gz | 4.3 kB | Details |
Release files / unitstorm-0.1.1.tar.gz
| Download URL | unitstorm-0.1.1.tar.gz |
|---|---|
| Size | 4.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
aeeebf1ea2046c3fa62cd450319ce2b40e94c9b15ba3f722852ddb8f7e2d4536
|
|
BLAKE2b-256 checksum How to use checksums |
049cc9eec961d4bffaf4f4fb8a5dacc1812c9dc87da450d673b0a6eb3f649c10
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |