1. 04 Feb, 2015 2 commits
    • Better support specifying of modulestore configuration in test cases · b353ed2e
      The existing pattern of using `override_settings(MODULESTORE=...)` prevented
      us from having more than one layer of subclassing in modulestore tests.
      
      In a structure like:
      
          @override_settings(MODULESTORE=store_a)
          class BaseTestCase(ModuleStoreTestCase):
              def setUp(self):
                  # use store
      
          @override_settings(MODULESTORE=store_b)
          class ChildTestCase(BaseTestCase):
              def setUp(self):
                  # use store
      
      In this case, the store actions performed in `BaseTestCase` on behalf of
      `ChildTestCase` would still use `store_a`, even though the `ChildTestCase`
      had specified to use `store_b`. This is because the `override_settings`
      decorator would be the innermost wrapper around the `BaseTestCase.setUp` method,
      no matter what `ChildTestCase` does.
      
      To remedy this, we move the call to `override_settings` into the
      `ModuleStoreTestCase.setUp` method, and use a cleanup to remove the override.
      Subclasses can just defined the `MODULESTORE` class attribute to specify which
      modulestore to use _for the entire `setUp` chain_.
      
      [PLAT-419]
      Calen Pennington committed
  2. 02 Feb, 2015 1 commit
  3. 30 Jan, 2015 1 commit
  4. 16 Jan, 2015 1 commit
  5. 15 Jan, 2015 8 commits
  6. 13 Jan, 2015 1 commit
  7. 08 Jan, 2015 1 commit
  8. 05 Jan, 2015 1 commit
  9. 02 Jan, 2015 1 commit
  10. 26 Dec, 2014 1 commit
  11. 15 Dec, 2014 2 commits
  12. 12 Dec, 2014 1 commit
  13. 10 Dec, 2014 1 commit
  14. 08 Dec, 2014 1 commit
  15. 05 Dec, 2014 4 commits