Commit d9fdccb5 by Deena Wang

testing testing tests

parent 85c412fc
......@@ -6,7 +6,7 @@ import unittest
from nose.tools import set_trace
from nose.plugins.skip import SkipTest
from django.http import Http404, HttpResponse, HttpRequest
from django.http import Http404, HttpResponse, HttpRequest, HttpResponseRedirect
from django.conf import settings
from django.contrib.auth.models import User
from django.test.client import Client
......@@ -14,9 +14,12 @@ from django.conf import settings
from django.test import TestCase
from django.test.client import RequestFactory
from override_settings import override_settings
from django.core.exceptions import PermissionDenied
from xmodule.modulestore.django import modulestore, _MODULESTORES
import contentstore.views as views
import auth.authz as a
from contentstore.tests.factories import XModuleCourseFactory, CourseFactory
def xml_store_config(data_dir):
......@@ -39,16 +42,46 @@ class UserFactory(factory.Factory):
TEST_DATA_DIR = settings.COMMON_TEST_DATA_ROOT
TEST_DATA_XML_MODULESTORE = xml_store_config(TEST_DATA_DIR)
@override_settings(MODULESTORE=TEST_DATA_XML_MODULESTORE)
class ViewsTestCase(TestCase):
def setUp(self):
self.location = ['i4x', 'edX', 'toy', 'chapter', 'Overview']
self.location_2 = ['i4x', 'edX', 'full', 'course', '6.002_Spring_2012']
# empty Modulestore
self._MODULESTORES = {}
self.course_id = 'edX/toy/2012_Fall'
self.course_id_2 = 'edx/full/6.002_Spring_2012'
self.toy_course = modulestore().get_course(self.course_id)
def test_has_access(self):
user = UserFactory()
user.is_authenticated = True
set_trace()
self.assertTrue(views.has_access(user, self.location))
user = MagicMock(is_staff = True, is_active = True, is_authenticated = True)
m = MagicMock()
m.count.return_value = 1
user.groups.filter.return_value = m
self.assertTrue(views.has_access(user, self.location_2))
user.is_authenticated = False
self.assertFalse(views.has_access(user, self.location_2))
def test_course_index(self):
# UserFactory doesn't work?
self.user = MagicMock(is_staff = False, is_active = False)
self.user.is_authenticated.return_value = False
request = MagicMock(user = self.user)
# Instead of raising exception when has_access is False, redirects
self.assertIsInstance(views.course_index(request, 'edX',
'full', '6.002_Spring_2012'), HttpResponseRedirect)
self.user_2 = MagicMock(is_staff = True, is_active = True)
self.user_2.is_authenticated.return_value = True
request_2 = MagicMock(user = self.user_2)
# Bug? Raises error because calls modulestore().get_item(location)
#NotImplementedError: XMLModuleStores can't guarantee that definitions
#are unique. Use get_instance.
print views.course_index(request_2, 'edX',
'full', '6.002_Spring_2012')
def test_edit_subsection(self):
self.user = MagicMock(is_staff = False, is_active = False)
self.user.is_authenticated.return_value = False
self.request = MagicMock(user = self.user)
self.assertIsInstance(views.edit_subscription(self.request, self.location_2),
HttpResponseRedirect)
......@@ -107,8 +107,7 @@ class ModuleRenderTestCase(PageLoader):
mock_user_2 = MagicMock(User)
mock_user_2.is_authenticated.return_value = True
mock_module = MagicMock()
mock_module.shared_state_key = 'key'
mock_module = MagicMock(shared_state_key = 'key')
mock_module.location = Location('i4x', 'edX', 'toy', 'chapter', 'Overview')
mock_module.get_shared_state.return_value = '{}'
mock_cache = MagicMock()
......@@ -197,11 +196,9 @@ class ModuleRenderTestCase(PageLoader):
# keep going
def test_preview_chemcalc(self):
mock_request = MagicMock()
mock_request.method = 'notGET'
mock_request = MagicMock(method = 'notGET')
self.assertRaises(Http404, render.preview_chemcalc, mock_request)
mock_request_2 = MagicMock()
mock_request_2.method = 'GET'
mock_request_2 = MagicMock(method = 'GET')
mock_request_2.GET.get.return_value = None
self.assertEquals(render.preview_chemcalc(mock_request_2).content,
json.dumps({'preview':'',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment