Django包工具集
项目描述
这是Django应用打包的工具集。以下功能可用。
与setup.py一起运行的单元测试工具
仅用于测试的动态添加模型的单元测试工具
在syncdb命令中自动创建用户
如何安装
使用pip命令或easy_install
pip install django-packageutils
假设目录树
django-packagename +- setup.py +- RELEASE-VERSION # used for git versioning +- packagename # your package +- __init__.py +- models.py # or whatever +- tests +- __init__.py +- test_models.py # or whatever +- testapp # App only required in tests of this package +- __init__.py +- models.py +- test # django project for testing +- __init__.py +- settings.py +- manage.py +- urls.py +- runtests.py # for running test with setup.py
与setup.py一起运行的单元测试工具
在您的包目录中编写您的 runtests.py
import os from packageutils.test import get_package_runner from packageutils.test import run_tests def runtests(verbosity=1, interactive=True): package_dir = os.path.dirname(__file__) test_runner = get_package_runner(package_dir, verbosity, interactive) run_tests(test_runner, ['some_application_name']) if __name__ == '__main__': runtests()
将测试套件添加到您的 setup.py
setup( # ... some configures install_requires = [ 'distribute', # recommended 'setuptools-git', # recommended 'django-packageutils', # required # and some other requires ], test_suite = 'tests.runtests.runtests', test_require = [ 'django', ], )
然后执行以下命令
python setup.py test
仅用于测试的动态添加模型的单元测试工具
使用Django默认的TestCase,您不能在测试中添加所需的模型。有时您需要额外的模型来测试您的Django包,那么您可以使用 AppTestCase
from packageutils.testcase import AppTestCase from testapp.models import Article class TestAppTestCase(AppTestCase): # Apps only required in this test installed_apps = [ 'packagename.tests.testapp', ] # Middlewares only required in this test middleware_classes = [ 'testapp.middleware.SomeMiddlewareRequired', ] def test_creation(self): article = Article.objects.create(title='foo') assert Article.objects.filter(title='foo').exists()
在syncdb命令中自动创建用户
在 INSTALLED_APPS 中添加 packageutils.syncdb.autouser,然后在syncdb命令中自动创建管理员用户(密码将设置为“admin”)
项目详情
下载文件
下载适合您平台文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分布
django-packageutils-0.1.0.tar.gz (22.7 kB 查看哈希值)
构建的分发版
django_packageutils-0.1.0-py2.7.egg (60.1 kB 查看哈希值)