测试期间default_storage错误

时间:2013-10-01 15:24:20

标签: django unit-testing testing

我有一个TransactionTest尝试在不同的default_storage上运行:

  • settings.py:

    MEDIA_ROOT='/srv/http/my_proj/media'
    
  • tests.py:

    @override_settings(MEDIA_ROOT='/srv/http/my_proj/test')
    class OutputDataModule(TransactionTestCase):
        def test_01(self):
            myFunc()
    
  • views.py:

    def myFunc():
        print default_storage.path('')
    

为什么在测试阶段这会给我目录媒体,而不是目录测试

提前致谢。

2 个答案:

答案 0 :(得分:1)

这是Django中的一个错误,似乎修复了当前的主人(1.7dev),1.6预发行版和1.5.X稳定版(1.5.4)https://code.djangoproject.com/ticket/17744

答案 1 :(得分:0)

我解决了使用:

  • tests.py

    class OutputDataModule(TransactionTestCase):
        def test_01(self):
            with self.settings(MEDIA_ROOT='/srv/http/my_proj/test'):
                myFunc()
    

也许这只是 ovverride_settings()装饰者的错误......

相关问题