From 8ddf62bdd0e2893c22ac1415781f9955aa4aef2c Mon Sep 17 00:00:00 2001 From: Nikolas Nyby Date: Thu, 11 Apr 2024 15:33:07 -0400 Subject: [PATCH] :arrow_up: django 4.2 --- .../composition.creation_instructor.cy.js | 7 +- lti_auth/tests/factories.py | 2 +- lti_auth/tests/test_auth.py | 24 +- lti_auth/tests/test_lti.py | 20 +- lti_auth/tests/test_views.py | 26 +- mediathread/assetmgr/models.py | 4 +- mediathread/assetmgr/tests/test_api.py | 264 ++++++------- mediathread/assetmgr/tests/test_models.py | 10 +- .../assetmgr/tests/test_templatetags.py | 2 +- mediathread/assetmgr/tests/test_views.py | 248 ++++++------ mediathread/assetmgr/views.py | 3 +- mediathread/discussions/tests/test_views.py | 48 +-- mediathread/discussions/views.py | 10 +- mediathread/djangosherd/models.py | 4 +- mediathread/djangosherd/tests/test_api.py | 32 +- mediathread/djangosherd/tests/test_models.py | 270 ++++++------- mediathread/djangosherd/tests/test_views.py | 36 +- mediathread/djangosherd/views.py | 5 +- mediathread/main/clumper.py | 4 +- .../management/commands/integrationserver.py | 2 +- mediathread/main/tests/test_api.py | 18 +- mediathread/main/tests/test_course_details.py | 4 +- mediathread/main/tests/test_forms.py | 12 +- mediathread/main/tests/test_mixins.py | 2 +- mediathread/main/tests/test_models.py | 22 +- mediathread/main/tests/test_util.py | 8 +- mediathread/main/tests/test_views.py | 366 +++++++++--------- mediathread/main/views.py | 4 +- mediathread/mixins.py | 4 +- mediathread/projects/api.py | 8 +- mediathread/projects/tests/test_api.py | 38 +- mediathread/projects/tests/test_forms.py | 76 ++-- mediathread/projects/tests/test_homepage.py | 48 +-- mediathread/projects/tests/test_models.py | 210 +++++----- .../projects/tests/test_templatetags.py | 10 +- mediathread/projects/tests/test_views.py | 358 ++++++++--------- mediathread/projects/views.py | 8 +- mediathread/reports/tests/test_views.py | 108 +++--- mediathread/taxonomy/tests/test_api.py | 110 +++--- mediathread/taxonomy/tests/test_views.py | 36 +- mediathread/templates/assetmgr/analyze.html | 16 +- .../templates/assetmgr/pretender_select.html | 4 +- mediathread/templates/comments/form.html | 4 +- .../templates/courseaffils/course_detail.html | 4 +- .../dashboard/class_manage_sources.html | 2 +- .../templates/dashboard/class_migrate.html | 12 +- mediathread/templates/dashboard/clump.html | 4 +- .../templates/help/help_contentarea.html | 24 +- .../templates/main/collection_add.html | 14 +- .../templates/main/deprecated_homepage.html | 14 +- mediathread/templates/projects/clump.html | 2 +- .../projects/discussion_assignment_edit.html | 2 +- .../projects/selection_assignment_edit.html | 2 +- .../projects/selection_assignment_view.html | 8 +- .../projects/sequence_assignment_edit.html | 2 +- .../sequence_assignment_responses.html | 8 +- .../projects/sequence_assignment_view.html | 4 +- mediathread/util.py | 4 + requirements.txt | 22 +- structuredcollaboration/models.py | 10 +- structuredcollaboration/tests/test_models.py | 2 +- 61 files changed, 1322 insertions(+), 1313 deletions(-) diff --git a/cypress/e2e/2.composition/composition.creation_instructor.cy.js b/cypress/e2e/2.composition/composition.creation_instructor.cy.js index 363f0cac87..e58bba31ca 100644 --- a/cypress/e2e/2.composition/composition.creation_instructor.cy.js +++ b/cypress/e2e/2.composition/composition.creation_instructor.cy.js @@ -42,16 +42,17 @@ describe('Instructor Creates Composition', () => { cy.get('.project-submitbutton').click(); cy.get('.save-publish-status.modal').should('be.visible'); + cy.wait(500); cy.get('.save-publish-status.modal #id_publish').find('li') - .should('contain', 'Draft - only you can view') + .should('contain', 'Draft') .should('be.visible'); cy.get('.save-publish-status.modal input[name=publish]:checked') .should('exist').should('be.visible'); cy.get('.save-publish-status.modal #id_publish').find('li') - .should('contain', 'Whole Class - all class members can view') + .should('contain', 'Whole Class') .should('be.visible'); cy.get('.save-publish-status.modal #id_publish').find('li') - .should('not.contain', 'Whole World - a public url is provided') + .should('not.contain', 'Whole World') .should('be.visible'); cy.get('.btn-save-project').should('be.visible'); cy.get('.btn-save-project').click(); diff --git a/lti_auth/tests/factories.py b/lti_auth/tests/factories.py index a1fb4d1408..a38dd58cf8 100644 --- a/lti_auth/tests/factories.py +++ b/lti_auth/tests/factories.py @@ -70,7 +70,7 @@ def generate_lti_request(course_context=None, provider=None, use=None): request = RequestFactory().post('/lti/', params) - middleware = SessionMiddleware() + middleware = SessionMiddleware(request) middleware.process_request(request) request.session.save() diff --git a/lti_auth/tests/test_auth.py b/lti_auth/tests/test_auth.py index 7c849f6526..d2ef1261d0 100644 --- a/lti_auth/tests/test_auth.py +++ b/lti_auth/tests/test_auth.py @@ -15,59 +15,59 @@ def setUp(self): def test_create_user(self): user = self.backend.create_user(self.lti, '12345') self.assertFalse(user.has_usable_password()) - self.assertEquals(user.email, 'foo@bar.com') - self.assertEquals(user.get_full_name(), 'Foo Baz') + self.assertEqual(user.email, 'foo@bar.com') + self.assertEqual(user.get_full_name(), 'Foo Baz') def test_create_user_no_full_name(self): self.lti.lti_params.pop('lis_person_name_full') user = self.backend.create_user(self.lti, '12345') - self.assertEquals(user.get_full_name(), 'student') + self.assertEqual(user.get_full_name(), 'student') def test_create_user_empty_full_name(self): self.lti.lti_params['lis_person_name_full'] = '' user = self.backend.create_user(self.lti, '12345') - self.assertEquals(user.get_full_name(), 'student') + self.assertEqual(user.get_full_name(), 'student') def test_create_user_long_name(self): self.lti.lti_params['lis_person_name_full'] = ( 'Pneumonoultramicroscopicsilicovolcanoconiosis ' 'Supercalifragilisticexpialidocious') user = self.backend.create_user(self.lti, '12345') - self.assertEquals( + self.assertEqual( user.get_full_name(), 'Pneumonoultramicroscopicsilico Supercalifragilisticexpialidoc') def test_find_or_create_user1(self): # via email user = UserFactory(email='foo@bar.com') - self.assertEquals(self.backend.find_or_create_user(self.lti), user) + self.assertEqual(self.backend.find_or_create_user(self.lti), user) def test_find_or_create_user2(self): # via lms username username = 'uni123' self.lti.lti_params['custom_canvas_user_login_id'] = username user = UserFactory(username=username) - self.assertEquals(self.backend.find_or_create_user(self.lti), user) + self.assertEqual(self.backend.find_or_create_user(self.lti), user) def test_find_or_create_user3(self): # via hashed username self.lti.lti_params['oauth_consumer_key'] = '1234567890' username = self.backend.get_hashed_username(self.lti) user = UserFactory(username=username) - self.assertEquals(self.backend.find_or_create_user(self.lti), user) + self.assertEqual(self.backend.find_or_create_user(self.lti), user) def test_find_or_create_user4(self): # new user self.lti.lti_params['oauth_consumer_key'] = '1234567890' user = self.backend.find_or_create_user(self.lti) self.assertFalse(user.has_usable_password()) - self.assertEquals(user.email, 'foo@bar.com') - self.assertEquals(user.get_full_name(), 'Foo Baz') + self.assertEqual(user.email, 'foo@bar.com') + self.assertEqual(user.get_full_name(), 'Foo Baz') username = self.backend.get_hashed_username(self.lti) - self.assertEquals(user.username, username) + self.assertEqual(user.username, username) def test_get_user(self): user = UserFactory() self.assertIsNone(self.backend.get_user(1234)) - self.assertEquals(self.backend.get_user(user.id), user) + self.assertEqual(self.backend.get_user(user.id), user) diff --git a/lti_auth/tests/test_lti.py b/lti_auth/tests/test_lti.py index 127c46007c..5dde2e88e1 100644 --- a/lti_auth/tests/test_lti.py +++ b/lti_auth/tests/test_lti.py @@ -11,39 +11,39 @@ class LTITest(TestCase): def test_init(self): lti = LTI('initial', 'any') - self.assertEquals(lti.request_type, 'initial') - self.assertEquals(lti.role_type, 'any') + self.assertEqual(lti.request_type, 'initial') + self.assertEqual(lti.role_type, 'any') def test_consumer_user_id(self): lti = LTI('initial', 'any') lti.lti_params = BASE_LTI_PARAMS.copy() lti.lti_params['oauth_consumer_key'] = '1234567890' - self.assertEquals(lti.consumer_user_id(), '1234567890-student') + self.assertEqual(lti.consumer_user_id(), '1234567890-student') def test_user_email(self): lti = LTI('initial', 'any') self.assertIsNone(lti.user_email()) lti.lti_params = BASE_LTI_PARAMS - self.assertEquals(lti.user_email(), 'foo@bar.com') + self.assertEqual(lti.user_email(), 'foo@bar.com') def test_user_fullname(self): lti = LTI('initial', 'any') - self.assertEquals(lti.user_fullname(), '') + self.assertEqual(lti.user_fullname(), '') lti.lti_params = {'user_id': 'student_one'} - self.assertEquals(lti.user_fullname(), 'student_one') + self.assertEqual(lti.user_fullname(), 'student_one') lti.lti_params = BASE_LTI_PARAMS - self.assertEquals(lti.user_fullname(), 'Foo Bar Baz') + self.assertEqual(lti.user_fullname(), 'Foo Bar Baz') def test_user_roles(self): lti = LTI('initial', 'any') - self.assertEquals(lti.user_roles(), []) + self.assertEqual(lti.user_roles(), []) lti.lti_params = BASE_LTI_PARAMS - self.assertEquals(lti.user_roles(), [ + self.assertEqual(lti.user_roles(), [ u'urn:lti:instrole:ims/lis/instructor', u'urn:lti:instrole:ims/lis/staff']) @@ -54,7 +54,7 @@ def test_consumers(self): lti = LTI('any', 'any') with self.settings(PYLTI_CONFIG={'consumers': CONSUMERS}): - self.assertEquals(lti._consumers(), CONSUMERS) + self.assertEqual(lti._consumers(), CONSUMERS) def test_verify_any(self): lti = LTI('any', 'any') diff --git a/lti_auth/tests/test_views.py b/lti_auth/tests/test_views.py index 7bee6e8968..fad44eeee1 100644 --- a/lti_auth/tests/test_views.py +++ b/lti_auth/tests/test_views.py @@ -54,7 +54,7 @@ def test_launch_invalid_user(self): request = generate_lti_request() response = LTIRoutingView().dispatch(request) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertContains(response, 'Authentication Failed') self.assertFalse(request.session[LTI_SESSION_KEY]) @@ -64,7 +64,7 @@ def test_launch_invalid_course(self): request = generate_lti_request() response = LTIRoutingView().dispatch(request) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertContains(response, 'Course Configuration') @@ -78,17 +78,17 @@ def test_launch(self): view.request = request response = view.dispatch(request) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) landing = '/lti/landing/{}/?lti_version=LTI-1p0&' - self.assertEquals( + self.assertEqual( response.url, landing.format(ctx.lms_course_context)) self.assertIsNotNone(request.session[LTI_SESSION_KEY]) user = request.user self.assertFalse(user.has_usable_password()) - self.assertEquals(user.email, 'foo@bar.com') - self.assertEquals(user.get_full_name(), 'Foo Baz') + self.assertEqual(user.email, 'foo@bar.com') + self.assertEqual(user.get_full_name(), 'Foo Baz') self.assertTrue(user in ctx.group.user_set.all()) self.assertTrue(user in ctx.faculty_group.user_set.all()) @@ -103,7 +103,7 @@ def test_launch_custom_landing_page(self): response = view.dispatch(request) landing = 'http://testserver/lti/landing/{}/?lti_version=LTI-1p0&' - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.assertTrue( response.url, landing.format(ctx.lms_course_context)) @@ -111,8 +111,8 @@ def test_launch_custom_landing_page(self): self.assertIsNotNone(request.session[LTI_SESSION_KEY]) user = request.user self.assertFalse(user.has_usable_password()) - self.assertEquals(user.email, 'foo@bar.com') - self.assertEquals(user.get_full_name(), 'Foo Baz') + self.assertEqual(user.email, 'foo@bar.com') + self.assertEqual(user.get_full_name(), 'Foo Baz') self.assertTrue(user in ctx.group.user_set.all()) self.assertTrue(user in ctx.faculty_group.user_set.all()) @@ -126,8 +126,8 @@ def test_embed(self): view.request = request response = view.dispatch(request) - self.assertEquals(response.status_code, 302) - self.assertEquals( + self.assertEqual(response.status_code, 302) + self.assertEqual( response.url, 'http://testserver/asset/embed/?return_url=/asset/' '<i_version=LTI-1p0&') @@ -135,7 +135,7 @@ def test_embed(self): self.assertIsNotNone(request.session[LTI_SESSION_KEY]) user = request.user self.assertFalse(user.has_usable_password()) - self.assertEquals(user.email, 'foo@bar.com') - self.assertEquals(user.get_full_name(), 'Foo Baz') + self.assertEqual(user.email, 'foo@bar.com') + self.assertEqual(user.get_full_name(), 'Foo Baz') self.assertTrue(user in ctx.group.user_set.all()) self.assertTrue(user in ctx.faculty_group.user_set.all()) diff --git a/mediathread/assetmgr/models.py b/mediathread/assetmgr/models.py index 506bab741a..7945d7cf0b 100755 --- a/mediathread/assetmgr/models.py +++ b/mediathread/assetmgr/models.py @@ -10,7 +10,7 @@ from django.core.cache import cache from django.urls import reverse from django.db import models -from django.utils.encoding import smart_text +from django.utils.encoding import smart_str from tagging.models import Tag from mediathread.assetmgr.custom_storage import private_storage @@ -378,7 +378,7 @@ class Source(models.Model): auto_now=True) def __str__(self): - return '[%s] %s' % (self.label, smart_text(self.asset)) + return '[%s] %s' % (self.label, smart_str(self.asset)) def is_image(self): return (self.label == 'poster' or diff --git a/mediathread/assetmgr/tests/test_api.py b/mediathread/assetmgr/tests/test_api.py index ee3587e8da..979a2805c7 100644 --- a/mediathread/assetmgr/tests/test_api.py +++ b/mediathread/assetmgr/tests/test_api.py @@ -78,14 +78,14 @@ def get_credentials(self): def assertAssetEquals(self, asset, title, author, primary_type, selection_ids): - self.assertEquals(asset['title'], title) - self.assertEquals(asset['author']['public_name'], author) - self.assertEquals(asset['primary_type'], primary_type) + self.assertEqual(asset['title'], title) + self.assertEqual(asset['author']['public_name'], author) + self.assertEqual(asset['primary_type'], primary_type) - self.assertEquals(len(asset['annotations']), len(selection_ids)) + self.assertEqual(len(asset['annotations']), len(selection_ids)) for idx, selection in enumerate(asset['annotations']): - self.assertEquals(int(selection['id']), selection_ids[idx]) + self.assertEqual(int(selection['id']), selection_ids[idx]) def test_getall_as_student(self): self.assertTrue( @@ -98,7 +98,7 @@ def test_getall_as_student(self): the_json = json.loads(response.content) objects = the_json['assets'] - self.assertEquals(len(objects), 2) + self.assertEqual(len(objects), 2) selections = [self.student_note.id, self.instructor_note.id] self.assertAssetEquals(objects[0], self.asset1.title, @@ -122,11 +122,11 @@ def test_restricted_getall_as_student(self): url = '/api/asset/?annotations=true' response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) objects = the_json['assets'] - self.assertEquals(len(objects), 2) + self.assertEqual(len(objects), 2) selections = [self.instructor_note.id] self.assertAssetEquals(objects[0], self.asset1.title, @@ -150,17 +150,17 @@ def test_getall_as_instructor(self): the_json = json.loads(response.content) objects = the_json['assets'] - self.assertEquals(len(objects), 2) + self.assertEqual(len(objects), 2) match = [x for x in objects if x['id'] == self.asset1.id] - self.assertEquals(len(match), 1) + self.assertEqual(len(match), 1) selections = [self.student_note.id, self.instructor_note.id] self.assertAssetEquals(match[0], self.asset1.title, 'One, Instructor', 'image', selections) self.assertFalse('global_annotation' in objects[0]) match = [x for x in objects if x['id'] == self.asset2.id] - self.assertEquals(len(match), 1) + self.assertEqual(len(match), 1) self.assertAssetEquals( match[0], self.asset2.title, 'One, Instructor', 'video', [self.asset2_instructor_note.id]) @@ -173,8 +173,8 @@ def test_restricted_getall_as_instructor(self): self.test_getall_as_instructor() def test_getstudentlist_as_student_owner(self): - self.assert_(self.client.login(username=self.student_one.username, - password="test")) + assert self.client.login(username=self.student_one.username, + password="test") record_owner = self.student_one.username response = self.client.get( @@ -182,29 +182,29 @@ def test_getstudentlist_as_student_owner(self): {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') the_json = json.loads(response.content) - self.assertEquals(the_json['space_owner']['username'], - self.student_one.username) - self.assertEquals(the_json['space_viewer']['username'], - self.student_one.username) + self.assertEqual(the_json['space_owner']['username'], + self.student_one.username) + self.assertEqual(the_json['space_viewer']['username'], + self.student_one.username) self.assertTrue(the_json['editable']) self.assertFalse(the_json['citable']) self.assertFalse(the_json['is_faculty']) - self.assertEquals(len(the_json['assets']), 1) - self.assertEquals(len(the_json['assets'][0]['annotations']), 1) + self.assertEqual(len(the_json['assets']), 1) + self.assertEqual(len(the_json['assets'][0]['annotations']), 1) annotations = the_json['assets'][0]['annotations'] - self.assertEquals(annotations[0]['title'], self.student_note.title) + self.assertEqual(annotations[0]['title'], self.student_note.title) # student one's tags - self.assertEquals(len(annotations[0]['metadata']['tags']), 1) - self.assertEquals(annotations[0]['metadata']['body'], - "student one selection note") + self.assertEqual(len(annotations[0]['metadata']['tags']), 1) + self.assertEqual(annotations[0]['metadata']['body'], + "student one selection note") self.assertTrue('global_annotation' in the_json['assets'][0]) gla = the_json['assets'][0]['global_annotation'] - self.assertEquals(len(gla['metadata']['tags']), 2) - self.assertEquals(gla['metadata']['body'], - "student one global note") + self.assertEqual(len(gla['metadata']['tags']), 2) + self.assertEqual(gla['metadata']['body'], + "student one global note") def test_restricted_getstudentlist_as_student_owner(self): # Set course details to restricted @@ -213,8 +213,8 @@ def test_restricted_getstudentlist_as_student_owner(self): self.test_getstudentlist_as_student_owner() def test_getstudentlist_as_student_viewer(self): - self.assert_(self.client.login(username=self.student_two.username, - password="test")) + assert self.client.login(username=self.student_two.username, + password="test") record_owner = self.student_one.username response = self.client.get( @@ -222,36 +222,36 @@ def test_getstudentlist_as_student_viewer(self): {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') the_json = json.loads(response.content) - self.assertEquals(the_json['space_owner']['username'], - self.student_one.username) - self.assertEquals(the_json['space_viewer']['username'], - self.student_two.username) + self.assertEqual(the_json['space_owner']['username'], + self.student_one.username) + self.assertEqual(the_json['space_viewer']['username'], + self.student_two.username) self.assertFalse(the_json['editable']) self.assertFalse(the_json['citable']) self.assertFalse(the_json['is_faculty']) - self.assertEquals(len(the_json['assets']), 1) - self.assertEquals(len(the_json['assets'][0]['annotations']), 1) + self.assertEqual(len(the_json['assets']), 1) + self.assertEqual(len(the_json['assets'][0]['annotations']), 1) annotations = the_json['assets'][0]['annotations'] - self.assertEquals(annotations[0]['title'], self.student_note.title) + self.assertEqual(annotations[0]['title'], self.student_note.title) # student two's tags - self.assertEquals(len(annotations[0]['metadata']['tags']), 1) - self.assertEquals(annotations[0]['metadata']['body'], - "student one selection note") + self.assertEqual(len(annotations[0]['metadata']['tags']), 1) + self.assertEqual(annotations[0]['metadata']['body'], + "student one selection note") self.assertTrue('global_annotation' in the_json['assets'][0]) gla = the_json['assets'][0]['global_annotation'] - self.assertEquals(len(gla['metadata']['tags']), 2) - self.assertEquals(gla['metadata']['body'], - "student one global note") + self.assertEqual(len(gla['metadata']['tags']), 2) + self.assertEqual(gla['metadata']['body'], + "student one global note") def test_restricted_getstudentlist_as_student_viewer(self): self.sample_course.add_detail(course_details.SELECTION_VISIBILITY_KEY, 0) - self.assert_(self.client.login(username=self.student_two.username, - password="test")) + assert self.client.login(username=self.student_two.username, + password="test") record_owner = self.student_one.username response = self.client.get( @@ -259,19 +259,19 @@ def test_restricted_getstudentlist_as_student_viewer(self): {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') the_json = json.loads(response.content) - self.assertEquals(the_json['space_owner']['username'], - self.student_one.username) - self.assertEquals(the_json['space_viewer']['username'], - self.student_two.username) - self.assertEquals(len(the_json['assets']), 1) - self.assertEquals(the_json['assets'][0]['annotation_count'], 0) + self.assertEqual(the_json['space_owner']['username'], + self.student_one.username) + self.assertEqual(the_json['space_viewer']['username'], + self.student_two.username) + self.assertEqual(len(the_json['assets']), 1) + self.assertEqual(the_json['assets'][0]['annotation_count'], 0) ga = the_json['assets'][0]['global_annotation'] - self.assertEquals(ga['author']['username'], 'student_one') + self.assertEqual(ga['author']['username'], 'student_one') def test_getstudentlist_as_instructor(self): - self.assert_(self.client.login(username=self.instructor_one.username, - password="test")) + assert self.client.login(username=self.instructor_one.username, + password="test") self.switch_course(self.client, self.sample_course) record_owner = self.student_one.username @@ -280,28 +280,28 @@ def test_getstudentlist_as_instructor(self): {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') the_json = json.loads(response.content) - self.assertEquals(the_json['space_owner']['username'], - self.student_one.username) - self.assertEquals(the_json['space_viewer']['username'], - self.instructor_one.username) + self.assertEqual(the_json['space_owner']['username'], + self.student_one.username) + self.assertEqual(the_json['space_viewer']['username'], + self.instructor_one.username) self.assertFalse(the_json['editable']) self.assertFalse(the_json['citable']) self.assertTrue(the_json['is_faculty']) - self.assertEquals(len(the_json['assets']), 1) - self.assertEquals(len(the_json['assets'][0]['annotations']), 1) + self.assertEqual(len(the_json['assets']), 1) + self.assertEqual(len(the_json['assets'][0]['annotations']), 1) annotations = the_json['assets'][0]['annotations'] - self.assertEquals(annotations[0]['title'], self.student_note.title) + self.assertEqual(annotations[0]['title'], self.student_note.title) - self.assertEquals(len(annotations[0]['metadata']['tags']), 1) - self.assertEquals(annotations[0]['metadata']['body'], - "student one selection note") + self.assertEqual(len(annotations[0]['metadata']['tags']), 1) + self.assertEqual(annotations[0]['metadata']['body'], + "student one selection note") self.assertTrue('global_annotation' in the_json['assets'][0]) gla = the_json['assets'][0]['global_annotation'] - self.assertEquals(len(gla['metadata']['tags']), 2) - self.assertEquals(gla['metadata']['body'], - "student one global note") + self.assertEqual(len(gla['metadata']['tags']), 2) + self.assertEqual(gla['metadata']['body'], + "student one global note") def test_restricted_getstudentlist_as_instructor(self): # Set course details to restricted @@ -317,7 +317,7 @@ def test_getobject_as_student_owner(self): response = self.client.get('/api/asset/%s/' % self.asset1.id, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) selections = [self.instructor_note.id, self.student_note.id] @@ -328,8 +328,8 @@ def test_getobject_as_student_owner(self): 'One, Instructor', 'image', selections) self.assertTrue('global_annotation' in asset) - self.assertEquals(asset['global_annotation']['id'], - self.student_ga.id) + self.assertEqual(asset['global_annotation']['id'], + self.student_ga.id) def test_restricted_getobject_as_student_owner(self): self.sample_course.add_detail(course_details.SELECTION_VISIBILITY_KEY, @@ -345,7 +345,7 @@ def test_getobject_as_instructor_viewer(self): response = self.client.get('/api/asset/%s/' % self.asset1.id, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) selections = [self.instructor_note.id, self.student_note.id] @@ -356,8 +356,8 @@ def test_getobject_as_instructor_viewer(self): 'One, Instructor', 'image', selections) self.assertTrue('global_annotation' in asset) - self.assertEquals(asset['global_annotation']['id'], - self.instructor_ga.id) + self.assertEqual(asset['global_annotation']['id'], + self.instructor_ga.id) def test_restricted_getobject_as_instructor_viewer(self): self.sample_course.add_detail(course_details.SELECTION_VISIBILITY_KEY, @@ -372,7 +372,7 @@ def test_getobject_as_student_viewer(self): response = self.client.get('/api/asset/%s/' % self.asset1.id, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) selections = [self.instructor_note.id, self.student_note.id] @@ -396,7 +396,7 @@ def test_restricted_getobject_as_student_viewer(self): response = self.client.get('/api/asset/%s/' % self.asset1.id, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) selections = [self.instructor_note.id] @@ -426,7 +426,7 @@ def test_post_list(self): self.client.login(username=self.instructor_one.username, password="test")) response = self.client.post('/api/asset/', {}) - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) def test_put_detail(self): self.assertTrue( @@ -436,7 +436,7 @@ def test_put_detail(self): response = self.client.put('/api/asset/{}/'.format(self.asset2.id), {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) def test_delete(self): self.assertTrue( @@ -446,7 +446,7 @@ def test_delete(self): response = self.client.delete('/api/asset/{}/'.format(self.asset2.id), {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) def test_getobject_multiple_class_member_nocourse(self): self.assertTrue( @@ -456,9 +456,9 @@ def test_getobject_multiple_class_member_nocourse(self): # No course selection yet response = self.client.get('/api/asset/%s/' % self.asset1.id, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) - self.assertEquals(response.templates[0].name, - "courseaffils/course_list.html") + self.assertEqual(response.status_code, 200) + self.assertEqual(response.templates[0].name, + "courseaffils/course_list.html") def test_getobject_multiple_class_member_wrongcourse(self): self.assertTrue( @@ -469,9 +469,9 @@ def test_getobject_multiple_class_member_wrongcourse(self): response = self.client.get('/api/asset/%s/' % self.asset1.id, {}, follow=True, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) - self.assertEquals(response.templates[0].name, - "assetmgr/asset_not_found.html") + self.assertEqual(response.status_code, 200) + self.assertEqual(response.templates[0].name, + "assetmgr/asset_not_found.html") def test_getobject_multiple_class_member_rightcourse(self): self.assertTrue( @@ -482,7 +482,7 @@ def test_getobject_multiple_class_member_rightcourse(self): response = self.client.get('/api/asset/%s/' % self.asset1.id, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) selections = [self.instructor_note.id, self.student_note.id] @@ -499,9 +499,9 @@ def test_getlist_multiple_class_member(self): # No course selected response = self.client.get('/api/asset/', {}) - self.assertEquals(response.status_code, 200) - self.assertEquals(response.templates[0].name, - "courseaffils/course_list.html") + self.assertEqual(response.status_code, 200) + self.assertEqual(response.templates[0].name, + "courseaffils/course_list.html") # No dice, login to Alternate Course self.switch_course(self.client, self.alt_course) @@ -513,34 +513,34 @@ def test_getlist_multiple_class_member(self): the_json = json.loads(response.content) objects = the_json['assets'] - self.assertEquals(len(objects), 0) + self.assertEqual(len(objects), 0) def test_render_tag_list(self): tags = Tag.objects.usage_for_queryset(self.asset1.sherdnote_set.all(), counts=True) resource = TagResource() lst = resource.render_list(None, tags) - self.assertEquals(len(lst), 5) + self.assertEqual(len(lst), 5) - self.assertEquals(lst[0]['count'], 3) - self.assertEquals(lst[0]['last'], False) - self.assertEquals(lst[0]['name'], 'image') + self.assertEqual(lst[0]['count'], 3) + self.assertEqual(lst[0]['last'], False) + self.assertEqual(lst[0]['name'], 'image') - self.assertEquals(lst[1]['count'], 1) - self.assertEquals(lst[1]['last'], False) - self.assertEquals(lst[1]['name'], 'instructor_one_global') + self.assertEqual(lst[1]['count'], 1) + self.assertEqual(lst[1]['last'], False) + self.assertEqual(lst[1]['name'], 'instructor_one_global') - self.assertEquals(lst[2]['count'], 1) - self.assertEquals(lst[2]['last'], False) - self.assertEquals(lst[2]['name'], 'instructor_one_selection') + self.assertEqual(lst[2]['count'], 1) + self.assertEqual(lst[2]['last'], False) + self.assertEqual(lst[2]['name'], 'instructor_one_selection') - self.assertEquals(lst[3]['count'], 1) - self.assertEquals(lst[3]['last'], False) - self.assertEquals(lst[3]['name'], 'student_one_global') + self.assertEqual(lst[3]['count'], 1) + self.assertEqual(lst[3]['last'], False) + self.assertEqual(lst[3]['name'], 'student_one_global') - self.assertEquals(lst[4]['count'], 1) - self.assertEquals(lst[4]['last'], True) - self.assertEquals(lst[4]['name'], 'student_one_selection') + self.assertEqual(lst[4]['count'], 1) + self.assertEqual(lst[4]['last'], True) + self.assertEqual(lst[4]['name'], 'student_one_selection') def test_render_related_tag_list(self): request = RequestFactory().get('') @@ -548,19 +548,19 @@ def test_render_related_tag_list(self): notes = SherdNote.objects.filter(author=self.student_one) lst = TagResource().render_related(request, notes) - self.assertEquals(len(lst), 3) + self.assertEqual(len(lst), 3) - self.assertEquals(lst[0]['count'], 1) - self.assertEquals(lst[0]['last'], False) - self.assertEquals(lst[0]['name'], 'image') + self.assertEqual(lst[0]['count'], 1) + self.assertEqual(lst[0]['last'], False) + self.assertEqual(lst[0]['name'], 'image') - self.assertEquals(lst[1]['count'], 1) - self.assertEquals(lst[1]['last'], False) - self.assertEquals(lst[1]['name'], 'student_one_global') + self.assertEqual(lst[1]['count'], 1) + self.assertEqual(lst[1]['last'], False) + self.assertEqual(lst[1]['name'], 'student_one_global') - self.assertEquals(lst[2]['count'], 1) - self.assertEquals(lst[2]['last'], True) - self.assertEquals(lst[2]['name'], 'student_one_selection') + self.assertEqual(lst[2]['count'], 1) + self.assertEqual(lst[2]['last'], True) + self.assertEqual(lst[2]['name'], 'student_one_selection') def test_render_tag_list_for_course(self): request = RequestFactory().get('') @@ -568,31 +568,31 @@ def test_render_tag_list_for_course(self): notes = SherdNote.objects.filter(author=self.student_one) lst = TagResource().render_for_course(request, notes) - self.assertEquals(len(lst), 6) + self.assertEqual(len(lst), 6) - self.assertEquals(lst[0]['count'], 1) - self.assertEquals(lst[0]['last'], False) - self.assertEquals(lst[0]['name'], 'image') + self.assertEqual(lst[0]['count'], 1) + self.assertEqual(lst[0]['last'], False) + self.assertEqual(lst[0]['name'], 'image') - self.assertEquals(lst[1]['count'], 0) - self.assertEquals(lst[1]['last'], False) - self.assertEquals(lst[1]['name'], 'instructor_one_global') + self.assertEqual(lst[1]['count'], 0) + self.assertEqual(lst[1]['last'], False) + self.assertEqual(lst[1]['name'], 'instructor_one_global') - self.assertEquals(lst[2]['count'], 0) - self.assertEquals(lst[2]['last'], False) - self.assertEquals(lst[2]['name'], 'instructor_one_selection') + self.assertEqual(lst[2]['count'], 0) + self.assertEqual(lst[2]['last'], False) + self.assertEqual(lst[2]['name'], 'instructor_one_selection') - self.assertEquals(lst[3]['count'], 1) - self.assertEquals(lst[3]['last'], False) - self.assertEquals(lst[3]['name'], 'student_one_global') + self.assertEqual(lst[3]['count'], 1) + self.assertEqual(lst[3]['last'], False) + self.assertEqual(lst[3]['name'], 'student_one_global') - self.assertEquals(lst[4]['count'], 1) - self.assertEquals(lst[4]['last'], False) - self.assertEquals(lst[4]['name'], 'student_one_selection') + self.assertEqual(lst[4]['count'], 1) + self.assertEqual(lst[4]['last'], False) + self.assertEqual(lst[4]['name'], 'student_one_selection') - self.assertEquals(lst[5]['count'], 0) - self.assertEquals(lst[5]['last'], True) - self.assertEquals(lst[5]['name'], 'video') + self.assertEqual(lst[5]['count'], 0) + self.assertEqual(lst[5]['last'], True) + self.assertEqual(lst[5]['name'], 'video') def test_filter_by_media_type(self): self.assertTrue( diff --git a/mediathread/assetmgr/tests/test_models.py b/mediathread/assetmgr/tests/test_models.py index 0c9c832853..276afe553b 100644 --- a/mediathread/assetmgr/tests/test_models.py +++ b/mediathread/assetmgr/tests/test_models.py @@ -3,7 +3,7 @@ from django.core.cache import cache from django.test import TestCase -from django.utils.encoding import smart_text +from django.utils.encoding import smart_str from mediathread.assetmgr.models import Asset, Source, METADATA_ORIGINAL_OWNER from mediathread.djangosherd.models import SherdNote @@ -57,7 +57,7 @@ def test_unicode(self): primary_source='image', author=self.instructor_one, title="Item Title") - self.assertEqual(smart_text(asset1), + self.assertEqual(smart_str(asset1), 'Item Title <%s> (Sample Course)' % asset1.id) def test_get_by_args(self): @@ -357,17 +357,17 @@ def test_assets_by_course_and_user(self): self.assertEqual(assets.count(), 0) def test_source_unicode(self): - desc = smart_text(self.asset1.primary) + desc = smart_str(self.asset1.primary) self.assertTrue('[image]' in desc) self.assertTrue('Sample Course' in desc) def test_external_collection_unicode(self): collection = ExternalCollectionFactory() - self.assertEqual(smart_text(collection), 'collection') + self.assertEqual(smart_str(collection), 'collection') def test_suggested_external_collection_unicode(self): collection = SuggestedExternalCollectionFactory() - self.assertEqual(smart_text(collection), 'collection') + self.assertEqual(smart_str(collection), 'collection') def test_html_source(self): with self.assertRaises(Source.DoesNotExist): diff --git a/mediathread/assetmgr/tests/test_templatetags.py b/mediathread/assetmgr/tests/test_templatetags.py index 6c00ee7054..45cafb1fd3 100644 --- a/mediathread/assetmgr/tests/test_templatetags.py +++ b/mediathread/assetmgr/tests/test_templatetags.py @@ -20,6 +20,6 @@ def test_not_in_course(self): self.suggested)) def test_is_in_course(self): - self.assertEquals( + self.assertEqual( map_course_collection(self.sample_course, self.suggested), self.collection) diff --git a/mediathread/assetmgr/tests/test_views.py b/mediathread/assetmgr/tests/test_views.py index 9c5057a70a..7895e979ed 100644 --- a/mediathread/assetmgr/tests/test_views.py +++ b/mediathread/assetmgr/tests/test_views.py @@ -61,8 +61,8 @@ def test_asset_access(self): # sample course members can't see alt course assets self.client.login(username=self.student_one.username, password='test') - self.assertEquals(self.client.get(item_url).status_code, 404) - self.assertEquals(self.client.get(note_url).status_code, 404) + self.assertEqual(self.client.get(item_url).status_code, 404) + self.assertEqual(self.client.get(note_url).status_code, 404) def test_post_noasset(self): self.client.login(username=self.student_one.username, password='test') @@ -88,7 +88,7 @@ def test_sources_from_args(self): request = RequestFactory().post('/save/', data) sources = ExternalAssetCreateView.sources_from_args(request) - self.assertEquals(len(sources.keys()), 0) + self.assertEqual(len(sources.keys()), 0) data = {'title': 'Good Asset', 'asset-source': 'bookmarklet', @@ -96,12 +96,12 @@ def test_sources_from_args(self): 'image-metadata': ['w720h526;text/html']} request = RequestFactory().post('/save/', data) sources = ExternalAssetCreateView.sources_from_args(request) - self.assertEquals(len(sources.keys()), 2) - self.assertEquals(sources['image'].url, 'https://www.flickr.com/') + self.assertEqual(len(sources.keys()), 2) + self.assertEqual(sources['image'].url, 'https://www.flickr.com/') self.assertTrue(sources['image'].primary) - self.assertEquals(sources['image'].width, 720) - self.assertEquals(sources['image'].height, 526) - self.assertEquals(sources['image'].media_type, 'text/html') + self.assertEqual(sources['image'].width, 720) + self.assertEqual(sources['image'].height, 526) + self.assertEqual(sources['image'].media_type, 'text/html') data = { 'title': 'HTML5 video title', @@ -112,12 +112,12 @@ def test_sources_from_args(self): } request = RequestFactory().post('/save/', data) sources = ExternalAssetCreateView.sources_from_args(request) - self.assertEquals(len(sources.keys()), 2) - self.assertEquals(sources['video'].url, - 'http://www.example.com/video.mp4') + self.assertEqual(len(sources.keys()), 2) + self.assertEqual(sources['video'].url, + 'http://www.example.com/video.mp4') self.assertTrue(sources['video'].primary) - self.assertEquals(sources['video'].width, 480) - self.assertEquals(sources['video'].height, 358) + self.assertEqual(sources['video'].width, 480) + self.assertEqual(sources['video'].height, 358) def test_parse_user(self): view = ExternalAssetCreateView() @@ -126,19 +126,19 @@ def test_parse_user(self): # regular path request.user = self.student_one - self.assertEquals(view.parse_user(request), self.student_one) + self.assertEqual(view.parse_user(request), self.student_one) # "as" without permissions request = RequestFactory().get('/', {'as': self.student_two.username}) request.user = self.student_one request.course = self.sample_course - self.assertEquals(view.parse_user(request), self.student_one) + self.assertEqual(view.parse_user(request), self.student_one) # "as" with permissions request.user = UserFactory(is_staff=True) request.course = self.sample_course self.add_as_faculty(request.course, request.user) - self.assertEquals(view.parse_user(request), self.student_two) + self.assertEqual(view.parse_user(request), self.student_two) def test_manage_external_collection_get(self): self.assertTrue( @@ -147,11 +147,11 @@ def test_manage_external_collection_get(self): self.switch_course(self.client, self.sample_course) response = self.client.get('/asset/archive/') - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) def test_manage_external_collection_notloggedin(self): response = self.client.post('/asset/archive/') - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_manage_external_collection_remove(self): exc = ExternalCollectionFactory(course=self.sample_course) @@ -163,7 +163,7 @@ def test_manage_external_collection_remove(self): response = self.client.post('/asset/archive/', {'remove': True, 'collection_id': exc.id}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) with self.assertRaises(Asset.DoesNotExist): Asset.objects.get(id=exc.id) @@ -226,7 +226,7 @@ def test_asset_create_via_browser_extension(self): view.request = request response = view.post(request) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) Asset.objects.get(title='YouTube Asset') data = { @@ -244,10 +244,10 @@ def test_asset_create_via_browser_extension(self): view.request = request response = view.post(request) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) asset = Asset.objects.get(title='HTML5 video title') - self.assertEquals(asset.metadata()['description'], - [data['metadata-description']]) + self.assertEqual(asset.metadata()['description'], + [data['metadata-description']]) def test_asset_workspace_course_lookup(self): self.assertIsNone(asset_workspace_courselookup()) @@ -255,8 +255,8 @@ def test_asset_workspace_course_lookup(self): asset1 = AssetFactory.create(course=self.sample_course, primary_source='image') - self.assertEquals(asset_workspace_courselookup(asset_id=asset1.id), - asset1.course) + self.assertEqual(asset_workspace_courselookup(asset_id=asset1.id), + asset1.course) def test_most_recent(self): self.assertTrue( @@ -268,11 +268,11 @@ def test_most_recent(self): author=self.instructor_one) response = self.client.get('/asset/most_recent/', {}, follow=True) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) url = '/course/%s/react/asset/%s/' % \ (self.sample_course.id, asset1.id) - self.assertEquals(response.redirect_chain, [(url, 302)]) + self.assertEqual(response.redirect_chain, [(url, 302)]) def test_asset_delete(self): self.assertTrue( @@ -290,12 +290,12 @@ def test_asset_delete(self): response = self.client.get('/asset/delete/%s/' % asset1.id, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) notes = asset1.sherdnote_set.filter(author=self.instructor_one) - self.assertEquals(notes.count(), 0) + self.assertEqual(notes.count(), 0) notes = asset1.sherdnote_set.filter(author=self.student_one) - self.assertEquals(notes.count(), 1) + self.assertEqual(notes.count(), 1) def test_asset_detail(self): self.assertTrue( @@ -312,20 +312,20 @@ def test_asset_detail(self): the_json = json.loads(response.content) self.assertTrue("space_owner" not in the_json) - self.assertEquals(len(the_json["panels"]), 1) + self.assertEqual(len(the_json["panels"]), 1) panel = the_json["panels"][0] self.assertIsNone(panel["current_annotation"]) - self.assertEquals(panel["current_asset"], asset1.id) - self.assertEquals(panel["panel_state"], "open") - self.assertEquals(panel["panel_state_label"], "Annotate Media") + self.assertEqual(panel["current_asset"], asset1.id) + self.assertEqual(panel["panel_state"], "open") + self.assertEqual(panel["panel_state_label"], "Annotate Media") self.assertTrue(panel["show_collection"]) - self.assertEquals(panel["template"], "asset_workspace") + self.assertEqual(panel["template"], "asset_workspace") self.assertTrue(panel["update_history"]) - self.assertEquals(len(panel["owners"]), 6) + self.assertEqual(len(panel["owners"]), 6) context = panel["context"] - self.assertEquals(context["type"], "asset") + self.assertEqual(context["type"], "asset") def test_asset_detail_alternate(self): self.assertTrue( @@ -333,7 +333,7 @@ def test_asset_detail_alternate(self): password='test')) response = self.switch_course(self.client, self.sample_course) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) asset1 = AssetFactory.create(course=self.alt_course, author=self.alt_instructor, @@ -341,7 +341,7 @@ def test_asset_detail_alternate(self): # Alternate Course Asset response = self.client.get('/asset/%s/' % asset1.id) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertTemplateUsed(response, "assetmgr/asset_not_found.html") self.assertContains(response, "Oops!") @@ -356,7 +356,7 @@ def test_asset_detail_does_not_exist(self): # Item Does Not Exist response = self.client.get('/asset/5616/') - self.assertEquals(response.status_code, 404) + self.assertEqual(response.status_code, 404) def test_asset_title_save_as_non_author(self): asset1 = AssetFactory.create(course=self.sample_course, @@ -368,15 +368,15 @@ def test_asset_title_save_as_non_author(self): title=None, is_global_annotation=True) # Update as the asset's non-original author with ga. This should fail - self.assert_(self.client.login(username=self.student_one.username, - password="test")) + assert self.client.login(username=self.student_one.username, + password="test") post_data = {'asset-title': "Student Item"} url = "/asset/save/%s/annotations/%s/" % (asset1.id, student_ga.id) response = self.client.post(url, post_data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) updated_asset = Asset.objects.get(id=asset1.id) - self.assertEquals(updated_asset.title, "Item Title") + self.assertEqual(updated_asset.title, "Item Title") def test_asset_title_save_as_author_not_global_annotation(self): asset1 = AssetFactory.create(course=self.sample_course, @@ -386,8 +386,8 @@ def test_asset_title_save_as_author_not_global_annotation(self): note = SherdNoteFactory( asset=asset1, author=self.instructor_one) - self.assert_(self.client.login(username=self.instructor_one.username, - password="test")) + assert self.client.login(username=self.instructor_one.username, + password="test") self.switch_course(self.client, self.sample_course) # Update passing in a non-global annotation. This should fail @@ -396,9 +396,9 @@ def test_asset_title_save_as_author_not_global_annotation(self): url = "/asset/save/%s/annotations/%s/" % (asset1.id, note.id) response = self.client.post(url, post_data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) asset = Asset.objects.get(id=asset1.id) - self.assertEquals(asset.title, "Item Title") + self.assertEqual(asset.title, "Item Title") def test_asset_title_save_as_author_global_annotation(self): asset1 = AssetFactory.create(course=self.sample_course, @@ -410,8 +410,8 @@ def test_asset_title_save_as_author_global_annotation(self): asset=asset1, author=self.instructor_one, title=None, is_global_annotation=True) - self.assert_(self.client.login(username=self.instructor_one.username, - password="test")) + assert self.client.login(username=self.instructor_one.username, + password="test") self.switch_course(self.client, self.sample_course) # Update passing in a non-global annotation. This should fail @@ -419,9 +419,9 @@ def test_asset_title_save_as_author_global_annotation(self): url = "/asset/save/%s/annotations/%s/" % (asset1.id, gann.id) response = self.client.post(url, post_data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) asset = Asset.objects.get(id=asset1.id) - self.assertEquals(asset.title, "Updated Item Title") + self.assertEqual(asset.title, "Updated Item Title") def test_annotation_save(self): asset1 = AssetFactory.create(course=self.sample_course, @@ -431,8 +431,8 @@ def test_annotation_save(self): note = SherdNoteFactory( asset=asset1, author=self.instructor_one) - self.assert_(self.client.login(username=self.instructor_one.username, - password="test")) + assert self.client.login(username=self.instructor_one.username, + password="test") self.switch_course(self.client, self.sample_course) # Update passing in a non-global annotation. This should fail @@ -440,26 +440,26 @@ def test_annotation_save(self): post_data = {'annotation-range1': -4.5, 'annotation-range2': 23.0} response = self.client.post(url, post_data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) updated_note = SherdNote.objects.get(id=note.id) - self.assertEquals(updated_note.range1, -4.5) - self.assertEquals(updated_note.range2, 23.0) + self.assertEqual(updated_note.range1, -4.5) + self.assertEqual(updated_note.range2, 23.0) def test_annotation_save_no_annotation_exists(self): asset1 = AssetFactory.create(course=self.sample_course, primary_source='image', title="Item Title") - self.assert_(self.client.login(username=self.instructor_one.username, - password="test")) + assert self.client.login(username=self.instructor_one.username, + password="test") self.switch_course(self.client, self.sample_course) url = "/asset/save/%s/annotations/%s/" % (asset1.id, 42) post_data = {'annotation-range1': -4.5} response = self.client.post(url, post_data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) def test_save_server2server(self): secrets = {'http://testserver/': 'testing'} @@ -490,8 +490,8 @@ def test_save_server2server(self): asset_url, status_code=302, target_status_code=200) - self.assertEquals(asset.author.username, self.student_one.username) - self.assertEquals(asset.course.title, "Sample Course") + self.assertEqual(asset.author.username, self.student_one.username) + self.assertEqual(asset.course.title, "Sample Course") self.assertIsNotNone(asset.global_annotation(self.student_one, auto_create=False)) @@ -516,8 +516,8 @@ def test_redirect_external_collection(self): request = RequestFactory().get(reverse('collection_redirect', args=[exc.id])) response = view.get(request, exc.id) - self.assertEquals(response.status_code, 302) - self.assertEquals(response.url, 'http://ccnmtl.columbia.edu') + self.assertEqual(response.status_code, 302) + self.assertEqual(response.url, 'http://ccnmtl.columbia.edu') def test_redirect_uploader_get_folder(self): request = RequestFactory().post('/upload/redirect') @@ -526,10 +526,10 @@ def test_redirect_uploader_get_folder(self): view = RedirectToUploaderView() view.request = request - self.assertEquals(view.get_upload_folder(), '') + self.assertEqual(view.get_upload_folder(), '') self.sample_course.add_detail(UPLOAD_FOLDER_KEY, 'z') - self.assertEquals(view.get_upload_folder(), 'z') + self.assertEqual(view.get_upload_folder(), 'z') def test_redirect_uploader(self): # no collection id @@ -554,7 +554,7 @@ def test_redirect_uploader(self): # successful redirect exc = ExternalCollectionFactory(url='http://ccnmtl.columbia.edu') response = view.post(request, [], **{'collection_id': exc.id}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.assertTrue(response.url.startswith(exc.url)) self.assertTrue('nonce' in response.url) self.assertTrue('hmac' in response.url) @@ -567,7 +567,7 @@ def test_redirect_uploader(self): request.user = self.student_one request.course = self.sample_course response = view.post(request, [], **{'collection_id': exc.id}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.assertTrue(as_user in response.url) self.assertTrue('audio=mp4' in response.url) @@ -579,7 +579,7 @@ def test_redirect_uploader(self): self.add_as_faculty(request.course, request.user) response = view.post(request, [], **{'collection_id': exc.id}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.assertTrue(as_user in response.url) def test_scalar_no_super_redirect(self): @@ -614,12 +614,12 @@ def test_annotation_create(self): asset = AssetFactory(course=self.sample_course, primary_source='image') response = annotation_create(request, asset.id) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) note = SherdNote.objects.get(title='Annotation Test', asset=asset) - self.assertEquals(note.range1, -4.5) - self.assertEquals(note.range2, 23) - self.assertEquals(note.tags, 'foo,bar') + self.assertEqual(note.range1, -4.5) + self.assertEqual(note.range2, 23) + self.assertEqual(note.tags, 'foo,bar') def test_annotation_create_global(self): asset = AssetFactory(course=self.sample_course, primary_source='image') @@ -628,14 +628,14 @@ def test_annotation_create_global(self): request.user = self.student_one request.course = self.sample_course response = annotation_create_global(request, asset.id) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) ga = asset.global_annotation(self.student_one, auto_create=False) self.assertIsNotNone(ga) the_json = loads(response.content) - self.assertEquals(the_json['asset']['id'], asset.id) - self.assertEquals(the_json['annotation']['id'], ga.id) + self.assertEqual(the_json['asset']['id'], asset.id) + self.assertEqual(the_json['annotation']['id'], ga.id) # invalid asset with self.assertRaises(Http404): @@ -652,10 +652,10 @@ def test_annotation_delete(self): request.course = self.sample_course response = annotation_delete(request, asset.id, note.id) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) response = annotation_delete(request, asset.id, note.id) - self.assertEquals(response.status_code, 404) + self.assertEqual(response.status_code, 404) def test_copy_annotation(self): asset = AssetFactory(course=self.sample_course, primary_source='image') @@ -677,14 +677,14 @@ def test_copy_annotation(self): HTTP_X_REQUESTED_WITH='XMLHttpRequest') the_json = loads(response.content) - self.assertEquals(the_json['asset']['id'], asset.id) - self.assertNotEquals(the_json['annotation']['id'], note.id) + self.assertEqual(the_json['asset']['id'], asset.id) + self.assertNotEqual(the_json['annotation']['id'], note.id) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) note = SherdNote.objects.get(author=self.student_two, title=note.title, range1=note.range1, range2=note.range2, annotation_data=note.annotation_data) - self.assertEquals(note.tags, '') + self.assertEqual(note.tags, '') self.assertIsNone(note.body) self.assertIsNotNone(asset.global_annotation(self.student_two, False)) @@ -700,11 +700,11 @@ def tearDown(self): def test_parse_domain(self): url = 'https://github.com/ccnmtl/mediathread/pull/354' - self.assertEquals(_parse_domain(url), 'https://github.com/') + self.assertEqual(_parse_domain(url), 'https://github.com/') def test_anonymous_user(self): # not logged in - self.assertEquals(self.client.get(self.url).status_code, 302) + self.assertEqual(self.client.get(self.url).status_code, 302) def test_get(self): return_url = 'http://foo.bar/baz/' @@ -712,11 +712,11 @@ def test_get(self): password='test') self.switch_course(self.client, self.sample_course) response = self.client.get(self.url, {'return_url': return_url}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_owners = loads(response.context['owners']) - self.assertEquals(len(the_owners), 5) - self.assertEquals(response.context['return_url'], return_url) + self.assertEqual(len(the_owners), 5) + self.assertEqual(response.context['return_url'], return_url) def test_get_selection(self): asset = AssetFactory.create(course=self.sample_course, @@ -762,8 +762,8 @@ def test_get_dimensions_image(self): view = AssetEmbedListView() dims = view.get_dimensions(primary) - self.assertEquals(dims['width'], EMBED_WIDTH) - self.assertEquals(dims['height'], EMBED_HEIGHT) + self.assertEqual(dims['width'], EMBED_WIDTH) + self.assertEqual(dims['height'], EMBED_HEIGHT) # set a width/height primary.width = 400 @@ -771,19 +771,19 @@ def test_get_dimensions_image(self): primary.save() dims = view.get_dimensions(primary) - self.assertEquals(dims['width'], EMBED_WIDTH) - self.assertEquals(dims['height'], EMBED_HEIGHT) + self.assertEqual(dims['width'], EMBED_WIDTH) + self.assertEqual(dims['height'], EMBED_HEIGHT) def test_get_dimensions_video(self): asset = AssetFactory.create( course=self.sample_course, primary_source='youtube') - self.assertEquals(asset.media_type(), 'video') + self.assertEqual(asset.media_type(), 'video') view = AssetEmbedListView() dims = view.get_dimensions(asset.primary) - self.assertEquals(dims['width'], EMBED_WIDTH) - self.assertEquals(dims['height'], EMBED_HEIGHT) + self.assertEqual(dims['width'], EMBED_WIDTH) + self.assertEqual(dims['height'], EMBED_HEIGHT) def test_get_secret(self): secrets = {'http://testserver/': 'testing'} @@ -793,8 +793,8 @@ def test_get_secret(self): with self.assertRaises(Http404): view.get_secret('http://foo.bar') - self.assertEquals(view.get_secret('http://testserver/a/b/c'), - 'testing') + self.assertEqual(view.get_secret('http://testserver/a/b/c'), + 'testing') def test_get_iframe_url(self): view = AssetEmbedListView() @@ -845,10 +845,10 @@ def test_embed_view(self): annot_id=note.id) self.assertTrue('item' in ctx) - self.assertEquals(ctx['item_id'], asset.id) - self.assertEquals(ctx['selection_id'], note.id) - self.assertEquals(ctx['presentation'], 'medium') - self.assertEquals(ctx['title'], 'Selection') + self.assertEqual(ctx['item_id'], asset.id) + self.assertEqual(ctx['selection_id'], note.id) + self.assertEqual(ctx['presentation'], 'medium') + self.assertEqual(ctx['title'], 'Selection') class AssetReferenceViewTest(MediathreadTestMixin, TestCase): @@ -873,18 +873,18 @@ def test_get(self): # anonymous response = self.client.get(url) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.client.login(username=self.student_one, password='test') # non-ajax response = self.client.get(url) - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) # ajax response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = loads(response.content) self.assertTrue('tags' in the_json) self.assertTrue('vocabulary' in the_json) @@ -894,7 +894,7 @@ def test_get(self): url = reverse('asset-references', args=[1234]) response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = loads(response.content) self.assertFalse('tags' in the_json) self.assertFalse('vocabulary' in the_json) @@ -905,7 +905,7 @@ class BookmarkletMigrationViewTest(TestCase): def test_get(self): response = self.client.get(reverse('bookmarklet_migration')) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) class TagCollectionViewTest(MediathreadTestMixin, TestCase): @@ -919,12 +919,12 @@ def tearDown(self): def test_get_anonymous(self): response = self.client.get(self.url) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_get_non_ajax(self): self.client.login(username=self.student_one.username, password='test') response = self.client.get(self.url) - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) def test_get(self): asset = AssetFactory(course=self.sample_course, primary_source='image') @@ -940,12 +940,12 @@ def test_get(self): response = self.client.get(self.url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = loads(response.content) self.assertTrue('tags' in the_json) - self.assertEquals(len(the_json['tags']), 2) - self.assertEquals(the_json['tags'][0]['name'], 'student_one_item') - self.assertEquals(the_json['tags'][1]['name'], 'student_one_selection') + self.assertEqual(len(the_json['tags']), 2) + self.assertEqual(the_json['tags'][0]['name'], 'student_one_item') + self.assertEqual(the_json['tags'][1]['name'], 'student_one_selection') class AssetUpdateViewTest(MediathreadTestMixin, TestCase): @@ -968,18 +968,18 @@ def setUp(self): } def test_get_matching_assets(self): - self.assertEquals( + self.assertEqual( AssetUpdateView().get_matching_assets('123').count(), 0) - self.assertEquals( + self.assertEqual( AssetUpdateView().get_matching_assets('33210').first(), self.asset) def test_not_allowed(self): # anonymous get or post response = self.client.get(self.url, self.params) - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) response = self.client.post(self.url, self.params) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # logged in get or post self.client.login(username=self.instructor_one.username, @@ -987,21 +987,21 @@ def test_not_allowed(self): self.switch_course(self.client, self.sample_course) response = self.client.get(self.url, self.params) - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) response = self.client.post(self.url, self.params) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) def test_not_found(self): secrets = {'http://testserver/': self.params['secret']} with self.settings(SERVER_ADMIN_SECRETKEYS=secrets): # None response = self.client.post(self.url, self.params, follow=True) - self.assertEquals(response.status_code, 404) + self.assertEqual(response.status_code, 404) # Invalid response = self.client.post(self.url, self.params, follow=True) - self.assertEquals(response.status_code, 404) + self.assertEqual(response.status_code, 404) def test_update_primary_and_thumb(self): self.params['metadata-wardenclyffe-id'] = '33210', @@ -1010,19 +1010,19 @@ def test_update_primary_and_thumb(self): with self.settings(SERVER_ADMIN_SECRETKEYS=secrets): # invalid primary source response = self.client.post(self.url, self.params, follow=True) - self.assertEquals(response.status_code, 400) + self.assertEqual(response.status_code, 400) # valid primary source self.params['mp4_pseudo'] = 'new primary' response = self.client.post(self.url, self.params, follow=True) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) s = self.asset.primary - self.assertEquals(s.label, 'mp4_pseudo') - self.assertEquals(s.url, self.params['mp4_pseudo']) + self.assertEqual(s.label, 'mp4_pseudo') + self.assertEqual(s.url, self.params['mp4_pseudo']) - self.assertEquals(self.asset.thumb_url, 'new thumb') + self.assertEqual(self.asset.thumb_url, 'new thumb') class AssetCreateViewTest(MediathreadTestMixin, TestCase): diff --git a/mediathread/assetmgr/views.py b/mediathread/assetmgr/views.py index 605deb2a11..9636b5bb7e 100644 --- a/mediathread/assetmgr/views.py +++ b/mediathread/assetmgr/views.py @@ -50,6 +50,7 @@ ) from mediathread.taxonomy.api import VocabularyResource from mediathread.taxonomy.models import Vocabulary +from mediathread.util import is_ajax import re from sentry_sdk import capture_exception from s3sign.views import SignS3View @@ -1087,7 +1088,7 @@ def get(self, request, course_pk=None, asset_id=None, annot_id=None): except Source.DoesNotExist: return render(request, '500.html', {}) - if not request.is_ajax(): + if not is_ajax(request): return self.redirect_to_react_views( request.course.id, asset_id, annot_id) diff --git a/mediathread/discussions/tests/test_views.py b/mediathread/discussions/tests/test_views.py index d60bb470dc..41fe823f7f 100644 --- a/mediathread/discussions/tests/test_views.py +++ b/mediathread/discussions/tests/test_views.py @@ -26,12 +26,12 @@ def test_create_discussions(self): self.create_discussion(self.alt_course, self.alt_instructor) discussions = get_course_discussions(self.sample_course) - self.assertEquals(1, len(discussions)) - self.assertEquals(discussions[0].title, "Sample Course Discussion") + self.assertEqual(1, len(discussions)) + self.assertEqual(discussions[0].title, "Sample Course Discussion") discussions = get_course_discussions(self.alt_course) - self.assertEquals(1, len(discussions)) - self.assertEquals(discussions[0].title, "Alternate Course Discussion") + self.assertEqual(1, len(discussions)) + self.assertEqual(discussions[0].title, "Alternate Course Discussion") def test_create_instructor_feedback(self): self.setup_sample_course() @@ -65,7 +65,7 @@ def test_delete_discussions(self): self.setup_sample_course() self.create_discussion(self.sample_course, self.instructor_one) discussions = get_course_discussions(self.sample_course) - self.assertEquals(1, len(discussions)) + self.assertEqual(1, len(discussions)) discussion = discussions[0] discussion_id = discussions[0].id @@ -73,27 +73,27 @@ def test_delete_discussions(self): app_label='threadedcomments') coll = Collaboration.objects.get(content_type=ctype, object_pk=discussion_id) - self.assertEquals(coll.content_object, discussion) + self.assertEqual(coll.content_object, discussion) url = reverse('discussion-delete', args=[discussion_id]) # anonymous response = self.client.post(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # non-faculty self.client.login(username=self.student_one.username, password='test') response = self.client.post(url, {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # faculty self.client.login(username=self.instructor_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.post(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) discussions = get_course_discussions(self.sample_course) - self.assertEquals(0, len(discussions)) + self.assertEqual(0, len(discussions)) with self.assertRaises(Collaboration.DoesNotExist): Collaboration.objects.get(content_type=ctype, @@ -103,7 +103,7 @@ def test_view_discussions(self): self.setup_sample_course() self.create_discussion(self.sample_course, self.instructor_one) discussions = get_course_discussions(self.sample_course) - self.assertEquals(1, len(discussions)) + self.assertEqual(1, len(discussions)) request = RequestFactory().get('/discussion/', {}) request.user = self.instructor_one @@ -116,13 +116,13 @@ def test_view_discussions(self): view = DiscussionView() view.request = request response = view.get(request, discussion_id=discussions[0].id) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) def test_view_discussions_ajax(self): self.setup_sample_course() self.create_discussion(self.sample_course, self.instructor_one) discussions = get_course_discussions(self.sample_course) - self.assertEquals(1, len(discussions)) + self.assertEqual(1, len(discussions)) request = RequestFactory().get('/discussion/', {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') @@ -136,11 +136,11 @@ def test_view_discussions_ajax(self): view = DiscussionView() view.request = request response = view.get(request, discussion_id=discussions[0].id) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = loads(response.content) - self.assertEquals(the_json['space_owner'], - self.instructor_one.username) + self.assertEqual(the_json['space_owner'], + self.instructor_one.username) def test_comment_save(self): self.setup_sample_course() @@ -159,19 +159,19 @@ def test_comment_save(self): url = reverse('comment-save', args=[discussion.id]) response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) # login required + self.assertEqual(response.status_code, 302) # login required self.client.login(username=self.instructor_one.username, password='test') response = self.client.post(url, data) - self.assertEquals(response.status_code, 405) # course required + self.assertEqual(response.status_code, 405) # course required self.switch_course(self.client, self.sample_course) response = self.client.post(url, data, HTTP_ACCEPT='text/html') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) discussion.refresh_from_db() - self.assertEquals(discussion.comment, 'update') + self.assertEqual(discussion.comment, 'update') def test_comments_post(self): self.setup_sample_course() @@ -194,10 +194,10 @@ def test_comments_post(self): password='test') self.switch_course(self.client, self.sample_course) response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) comment_id = re.search(r'\d+', response.url).group() obj = Comment.objects.get(id=comment_id) - self.assertEquals(obj.comment, 'posted') - self.assertEquals(obj.content_object, discussion.content_object) - self.assertEquals(obj.user_name, 'Instructor One') + self.assertEqual(obj.comment, 'posted') + self.assertEqual(obj.content_object, discussion.content_object) + self.assertEqual(obj.user_name, 'Instructor One') diff --git a/mediathread/discussions/views.py b/mediathread/discussions/views.py index 8985689bce..f461a3580b 100644 --- a/mediathread/discussions/views.py +++ b/mediathread/discussions/views.py @@ -6,7 +6,7 @@ from django.shortcuts import get_object_or_404, render from django.urls import reverse from django.utils.decorators import method_decorator -from django.utils.encoding import smart_text +from django.utils.encoding import smart_str from django.utils import timezone from django.views.decorators.csrf import ensure_csrf_cookie from django.views.decorators.http import require_POST @@ -27,6 +27,7 @@ ) from mediathread.taxonomy.api import VocabularyResource from mediathread.taxonomy.models import Vocabulary +from mediathread.util import is_ajax from random import choice from string import ascii_letters from structuredcollaboration.models import Collaboration @@ -101,7 +102,7 @@ def post(self, request, *args, **kwargs): new_threaded_comment, new_threaded_comment.content_object, new_threaded_comment.user) - if not request.is_ajax(): + if not is_ajax(request): if model == 'project': discussion_url = reverse( 'project-workspace', @@ -171,7 +172,7 @@ def get(self, request, *args, **kwargs): data = {'space_owner': request.user.username} - if not request.is_ajax(): + if not is_ajax(request): data['discussion'] = root_comment return render(request, 'discussions/discussion.html', data) else: @@ -313,7 +314,8 @@ def threaded_comment_json(request, comment): return { 'type': 'discussion', - 'form': smart_text(django_comments.get_form()(comment.content_object)), + 'form': smart_str( + django_comments.get_form()(comment.content_object)), 'editing': True, 'can_edit': True, 'discussion': { diff --git a/mediathread/djangosherd/models.py b/mediathread/djangosherd/models.py index 81fbb5a033..c8a72674ec 100755 --- a/mediathread/djangosherd/models.py +++ b/mediathread/djangosherd/models.py @@ -11,7 +11,7 @@ from django.urls import reverse from django.db import models from django.db.models.query_utils import Q -from django.utils.encoding import smart_text +from django.utils.encoding import smart_str from django_comments.models import Comment from tagging.fields import TagField from tagging.models import Tag, TaggedItem @@ -444,7 +444,7 @@ class DiscussionIndex(models.Model): modified = models.DateTimeField(auto_now=True) # update on save def __str__(self): - return smart_text(self.body) + return smart_str(self.body) @property def body(self): diff --git a/mediathread/djangosherd/tests/test_api.py b/mediathread/djangosherd/tests/test_api.py index 16d5e8e050..a3b40436c9 100644 --- a/mediathread/djangosherd/tests/test_api.py +++ b/mediathread/djangosherd/tests/test_api.py @@ -27,9 +27,9 @@ def test_render(self): request.user = self.instructor_one ctx = DiscussionIndexResource().render_list(request, indicies) self.assertTrue('references' in ctx) - self.assertEquals(ctx['references'][0]['title'], - 'Sample Course Discussion') - self.assertEquals(ctx['references'][0]['type'], 'discussion') + self.assertEqual(ctx['references'][0]['title'], + 'Sample Course Discussion') + self.assertEqual(ctx['references'][0]['type'], 'discussion') class SherdNoteResourceTest(MediathreadTestMixin, TestCase): @@ -62,8 +62,8 @@ def test_in_selection_assignment_response(self): bundle = SherdNoteResource().build_bundle( obj=self.note1, request=request) res.dehydrate(bundle) - self.assertEquals(bundle.data['editable'], False) - self.assertEquals(bundle.data['citable'], True) + self.assertEqual(bundle.data['editable'], False) + self.assertEqual(bundle.data['citable'], True) def test_in_sequence_assignment_response(self): res = SherdNoteResource() @@ -87,8 +87,8 @@ def test_in_sequence_assignment_response(self): bundle = SherdNoteResource().build_bundle( obj=self.note1, request=request) res.dehydrate(bundle) - self.assertEquals(bundle.data['editable'], False) - self.assertEquals(bundle.data['citable'], True) + self.assertEqual(bundle.data['editable'], False) + self.assertEqual(bundle.data['citable'], True) def test_render_related_terms(self): taxonomy = { @@ -110,10 +110,10 @@ def test_render_related_terms(self): obj=self.note1, request=request) values = res.render_related_terms(bundle) - self.assertEquals(len(values), 2) - self.assertEquals(values[0]['terms'][0]['display_name'], 'Square') - self.assertEquals(values[0]['terms'][1]['display_name'], 'Triangle') - self.assertEquals(values[1]['terms'][0]['display_name'], 'Red') + self.assertEqual(len(values), 2) + self.assertEqual(values[0]['terms'][0]['display_name'], 'Square') + self.assertEqual(values[0]['terms'][1]['display_name'], 'Triangle') + self.assertEqual(values[1]['terms'][0]['display_name'], 'Red') def test_dehydrate(self): res = SherdNoteResource() @@ -123,8 +123,8 @@ def test_dehydrate(self): obj=self.note1, request=request) res.dehydrate(bundle) - self.assertEquals(bundle.data['vocabulary'], []) - self.assertEquals(bundle.data['is_null'], False) - self.assertEquals(bundle.data['editable'], True) - self.assertEquals(bundle.data['is_global_annotation'], False) - self.assertEquals(bundle.data['citable'], True) + self.assertEqual(bundle.data['vocabulary'], []) + self.assertEqual(bundle.data['is_null'], False) + self.assertEqual(bundle.data['editable'], True) + self.assertEqual(bundle.data['is_global_annotation'], False) + self.assertEqual(bundle.data['citable'], True) diff --git a/mediathread/djangosherd/tests/test_models.py b/mediathread/djangosherd/tests/test_models.py index 9dc5bdc962..44f9caf0ca 100644 --- a/mediathread/djangosherd/tests/test_models.py +++ b/mediathread/djangosherd/tests/test_models.py @@ -24,50 +24,50 @@ def test_is_global_annotation(self): global_annotation, created = SherdNote.objects.global_annotation( asset, self.student_three, auto_create=True) self.assertTrue(global_annotation.is_global_annotation) - self.assertEquals(global_annotation.display_title(), asset.title) + self.assertEqual(global_annotation.display_title(), asset.title) whole_item_annotation = SherdNoteFactory( asset=asset, author=self.student_three, title="Whole Item Selection", range1=0, range2=0) self.assertFalse(whole_item_annotation.is_global_annotation) - self.assertEquals(whole_item_annotation.display_title(), - 'Whole Item Selection') + self.assertEqual(whole_item_annotation.display_title(), + 'Whole Item Selection') real_annotation = SherdNoteFactory( asset=asset, author=self.student_three, title="Selection", range1=116.25, range2=6.75) self.assertFalse(real_annotation.is_global_annotation) - self.assertEquals(real_annotation.display_title(), 'Selection') + self.assertEqual(real_annotation.display_title(), 'Selection') def test_seconds_to_code(self): self.assertRaises(TypeError, SherdNote.secondsToCode, None) - self.assertEquals(SherdNote.secondsToCode(0), "0:00") - self.assertEquals(SherdNote.secondsToCode(5), "0:05") - self.assertEquals(SherdNote.secondsToCode(60), "01:00") - self.assertEquals(SherdNote.secondsToCode(120), "02:00") - self.assertEquals(SherdNote.secondsToCode(3600, True), "01:00:00") - self.assertEquals(SherdNote.secondsToCode(6400), "01:46:40") - self.assertEquals(SherdNote.secondsToCode(86400, True), "24:00:00") - self.assertEquals(SherdNote.secondsToCode(363600, True), "101:00:00") + self.assertEqual(SherdNote.secondsToCode(0), "0:00") + self.assertEqual(SherdNote.secondsToCode(5), "0:05") + self.assertEqual(SherdNote.secondsToCode(60), "01:00") + self.assertEqual(SherdNote.secondsToCode(120), "02:00") + self.assertEqual(SherdNote.secondsToCode(3600, True), "01:00:00") + self.assertEqual(SherdNote.secondsToCode(6400), "01:46:40") + self.assertEqual(SherdNote.secondsToCode(86400, True), "24:00:00") + self.assertEqual(SherdNote.secondsToCode(363600, True), "101:00:00") def test_range_as_timecode(self): asset = AssetFactory(course=self.sample_course) global_annotation, created = SherdNote.objects.global_annotation( asset, self.student_three, auto_create=True) - self.assertEquals(global_annotation.range_as_timecode(), "") + self.assertEqual(global_annotation.range_as_timecode(), "") whole_item_annotation = SherdNoteFactory( asset=asset, author=self.student_three) - self.assertEquals(whole_item_annotation.range_as_timecode(), "") + self.assertEqual(whole_item_annotation.range_as_timecode(), "") real_annotation = SherdNoteFactory( asset=asset, author=self.student_three, range1=28, range2=39) - self.assertEquals(real_annotation.range_as_timecode(), "0:28 - 0:39") + self.assertEqual(real_annotation.range_as_timecode(), "0:28 - 0:39") real_annotation = SherdNoteFactory( asset=asset, author=self.student_three, range1=43, range2=75) - self.assertEquals(real_annotation.range_as_timecode(), "0:43 - 01:15") + self.assertEqual(real_annotation.range_as_timecode(), "0:43 - 01:15") def test_get_global_annotation(self): asset = AssetFactory(course=self.sample_course) @@ -79,17 +79,17 @@ def test_get_global_annotation(self): ann, created = SherdNote.objects.global_annotation(asset, author) self.assertFalse(created) - self.assertEquals(ann.title, None) - self.assertEquals(ann.title, None) - self.assertEquals(ann.body, None) - self.assertEquals(ann.tags, '') + self.assertEqual(ann.title, None) + self.assertEqual(ann.title, None) + self.assertEqual(ann.body, None) + self.assertEqual(ann.tags, '') author = self.student_one ann, created = SherdNote.objects.global_annotation(asset, author) self.assertTrue(created) - self.assertEquals(ann.title, None) - self.assertEquals(ann.body, None) - self.assertEquals(ann.tags, '') + self.assertEqual(ann.title, None) + self.assertEqual(ann.body, None) + self.assertEqual(ann.tags, '') def test_tags_split(self): asset = AssetFactory(course=self.sample_course) @@ -98,22 +98,22 @@ def test_tags_split(self): # no tags tags = ann.tags_split() - self.assertEquals(len(tags), 0) + self.assertEqual(len(tags), 0) # one tag ann.tags = ',foobar' ann.save() tags = ann.tags_split() - self.assertEquals(len(tags), 1) - self.assertEquals(tags[0].name, 'foobar') + self.assertEqual(len(tags), 1) + self.assertEqual(tags[0].name, 'foobar') # two tags ann.tags = ',youtube, test_instructor_item' ann.save() tags = ann.tags_split() - self.assertEquals(len(tags), 2) - self.assertEquals(tags[0].name, 'test_instructor_item') - self.assertEquals(tags[1].name, 'youtube') + self.assertEqual(len(tags), 2) + self.assertEqual(tags[0].name, 'test_instructor_item') + self.assertEqual(tags[1].name, 'youtube') def test_add_tag(self): asset = AssetFactory(course=self.sample_course) @@ -128,10 +128,10 @@ def test_add_tag(self): ann.save() tags = ann.tags_split() - self.assertEquals(len(tags), 3) - self.assertEquals(tags[0].name, 'bar') - self.assertEquals(tags[1].name, 'foo') - self.assertEquals(tags[2].name, 'foobar') + self.assertEqual(len(tags), 3) + self.assertEqual(tags[0].name, 'bar') + self.assertEqual(tags[1].name, 'foo') + self.assertEqual(tags[2].name, 'foobar') def test_update_reference_in_string(self): old_asset = AssetFactory(course=self.sample_course, @@ -162,19 +162,19 @@ def test_update_reference_in_string(self): citations = SherdNote.objects.references_in_string(new_text, old_note.author) - self.assertEquals(len(citations), 4) - self.assertEquals(citations[0].id, new_note.id) - self.assertEquals(citations[0].asset.id, new_note.asset.id) + self.assertEqual(len(citations), 4) + self.assertEqual(citations[0].id, new_note.id) + self.assertEqual(citations[0].asset.id, new_note.asset.id) - self.assertEquals(citations[1].id, new_note.id) - self.assertEquals(citations[1].asset.id, new_note.asset.id) + self.assertEqual(citations[1].id, new_note.id) + self.assertEqual(citations[1].asset.id, new_note.asset.id) - self.assertEquals(citations[2].id, alt_note.id) - self.assertEquals(citations[2].asset.id, old_asset.id) + self.assertEqual(citations[2].id, alt_note.id) + self.assertEqual(citations[2].asset.id, old_asset.id) gann = old_asset.global_annotation(self.student_one, auto_create=False) - self.assertEquals(citations[3].id, gann.id) - self.assertEquals(citations[3].asset.id, old_asset.id) + self.assertEqual(citations[3].id, gann.id) + self.assertEqual(citations[3].asset.id, old_asset.id) def test_filter_by_vocabulary(self): taxonomy = { @@ -217,64 +217,64 @@ def test_filter_by_vocabulary(self): # get all notes that are tagged red or blue ctx = {'%s' % colors.id: [red.id]} notes = SherdNote.objects.filter_by_vocabulary(ctx) - self.assertEquals(notes.count(), 2) + self.assertEqual(notes.count(), 2) ctx = {'%s' % colors.id: [blue.id]} notes = SherdNote.objects.filter_by_vocabulary(ctx) - self.assertEquals(notes.count(), 1) + self.assertEqual(notes.count(), 1) ctx = {'%s' % colors.id: [red.id, blue.id]} notes = SherdNote.objects.filter_by_vocabulary(ctx) - self.assertEquals(notes.count(), 3) + self.assertEqual(notes.count(), 3) ctx = {'%s' % shapes.id: [square.id]} notes = SherdNote.objects.filter_by_vocabulary(ctx) - self.assertEquals(notes.count(), 1) + self.assertEqual(notes.count(), 1) ctx = { '%s' % colors.id: [blue.id], '%s' % shapes.id: [square.id] } notes = SherdNote.objects.filter_by_vocabulary(ctx) - self.assertEquals(notes.count(), 0) + self.assertEqual(notes.count(), 0) ctx = { '%s' % colors.id: [red.id], '%s' % shapes.id: [square.id] } notes = SherdNote.objects.filter_by_vocabulary(ctx) - self.assertEquals(notes.count(), 1) - self.assertEquals(notes[0].title, "Our esteemed leaders") + self.assertEqual(notes.count(), 1) + self.assertEqual(notes[0].title, "Our esteemed leaders") ctx = { '%s' % shapes.id: [triangle.id] } notes = SherdNote.objects.filter_by_vocabulary(ctx) - self.assertEquals(notes.count(), 0) + self.assertEqual(notes.count(), 0) ctx = { '%s' % colors.id: [green.id], '%s' % shapes.id: [triangle.id] } notes = SherdNote.objects.filter_by_vocabulary(ctx) - self.assertEquals(notes.count(), 0) + self.assertEqual(notes.count(), 0) def test_filter_by_today(self): note = SherdNoteFactory() # today notes = SherdNote.objects.filter_by_date('today') - self.assertEquals(notes.count(), 1) - self.assertEquals(notes[0].title, note.title) + self.assertEqual(notes.count(), 1) + self.assertEqual(notes[0].title, note.title) # yesterday notes = SherdNote.objects.filter_by_date('yesterday') - self.assertEquals(notes.count(), 0) + self.assertEqual(notes.count(), 0) # in the last week notes = SherdNote.objects.filter_by_date('lastweek') - self.assertEquals(notes.count(), 1) - self.assertEquals(notes[0].title, note.title) + self.assertEqual(notes.count(), 1) + self.assertEqual(notes[0].title, note.title) class SherdNoteFilterTest(MediathreadTestMixin, TestCase): @@ -320,23 +320,23 @@ def test_filter_by_record_owner(self): author, visible_authors, True) - self.assertEquals(notes.count(), 2) + self.assertEqual(notes.count(), 2) - self.assertEquals(notes[0], self.student_one_ga) - self.assertEquals(notes[1], self.student_one_note) + self.assertEqual(notes[0], self.student_one_ga) + self.assertEqual(notes[1], self.student_one_note) def test_filter_no_authors(self): qs = Asset.objects.filter(id=self.asset.id) notes = SherdNote.objects.get_related_notes(qs, None, [], True) - self.assertEquals(notes.count(), 6) + self.assertEqual(notes.count(), 6) - self.assertEquals(notes[0], self.student_one_ga) - self.assertEquals(notes[1], self.student_one_note) - self.assertEquals(notes[2], self.student_two_ga) - self.assertEquals(notes[3], self.student_two_note) - self.assertEquals(notes[4], self.instructor_one_ga) - self.assertEquals(notes[5], self.instructor_one_note) + self.assertEqual(notes[0], self.student_one_ga) + self.assertEqual(notes[1], self.student_one_note) + self.assertEqual(notes[2], self.student_two_ga) + self.assertEqual(notes[3], self.student_two_note) + self.assertEqual(notes[4], self.instructor_one_ga) + self.assertEqual(notes[5], self.instructor_one_note) def test_filter_by_visible_authors(self): qs = Asset.objects.filter(id=self.asset.id) @@ -349,13 +349,13 @@ def test_filter_by_visible_authors(self): None, visible_authors, True) - self.assertEquals(notes.count(), 5) + self.assertEqual(notes.count(), 5) - self.assertEquals(notes[0], self.student_one_ga) - self.assertEquals(notes[1], self.student_one_note) - self.assertEquals(notes[2], self.student_two_ga) - self.assertEquals(notes[3], self.instructor_one_ga) - self.assertEquals(notes[4], self.instructor_one_note) + self.assertEqual(notes[0], self.student_one_ga) + self.assertEqual(notes[1], self.student_one_note) + self.assertEqual(notes[2], self.student_two_ga) + self.assertEqual(notes[3], self.instructor_one_ga) + self.assertEqual(notes[4], self.instructor_one_note) def test_filter_by_all_items_are_visible(self): qs = Asset.objects.filter(id=self.asset.id) @@ -368,26 +368,26 @@ def test_filter_by_all_items_are_visible(self): None, visible_authors, False) - self.assertEquals(notes.count(), 4) + self.assertEqual(notes.count(), 4) - self.assertEquals(notes[0], self.student_one_ga) - self.assertEquals(notes[1], self.student_one_note) - self.assertEquals(notes[2], self.instructor_one_ga) - self.assertEquals(notes[3], self.instructor_one_note) + self.assertEqual(notes[0], self.student_one_ga) + self.assertEqual(notes[1], self.student_one_note) + self.assertEqual(notes[2], self.instructor_one_ga) + self.assertEqual(notes[3], self.instructor_one_note) def test_filter_by_tags(self): notes = SherdNote.objects.filter_by_tags('student_one_selection') - self.assertEquals(notes.count(), 1) - self.assertEquals(notes[0], self.student_one_note) + self.assertEqual(notes.count(), 1) + self.assertEqual(notes[0], self.student_one_note) notes = SherdNote.objects.filter(asset=self.asset) - self.assertEquals(notes.count(), 6) + self.assertEqual(notes.count(), 6) notes = notes.filter_by_tags( 'student_two_selection,image').order_by('id') - self.assertEquals(notes.count(), 2) - self.assertEquals(notes[0], self.student_two_note) - self.assertEquals(notes[1], self.instructor_one_note) + self.assertEqual(notes.count(), 2) + self.assertEqual(notes[0], self.student_two_note) + self.assertEqual(notes[1], self.instructor_one_note) def test_get_related_assets(self): asset2 = AssetFactory(course=self.sample_course, @@ -398,7 +398,7 @@ def test_get_related_assets(self): notes = SherdNote.objects.filter(id__in=ids) assets = notes.get_related_assets() - self.assertEquals(assets.count(), 2) + self.assertEqual(assets.count(), 2) self.assertTrue(self.asset in assets) self.assertTrue(asset2 in assets) @@ -412,16 +412,16 @@ def test_exclude_primary_types(self): tags=',student_one_selection', range1=0, range2=1) qs = SherdNote.objects.filter(author=self.student_one) - self.assertEquals(qs.count(), 3) + self.assertEqual(qs.count(), 3) notes = qs.exclude_primary_types(['youtube']) - self.assertEquals(notes.count(), 2) + self.assertEqual(notes.count(), 2) self.assertTrue(self.student_one_ga in notes) self.assertTrue(self.student_one_note in notes) notes = qs.exclude_primary_types(['image']) - self.assertEquals(notes.count(), 1) - self.assertEquals(notes[0], youtube_note) + self.assertEqual(notes.count(), 1) + self.assertEqual(notes[0], youtube_note) class DiscussionIndexTest(MediathreadTestMixin, TestCase): @@ -461,18 +461,18 @@ def test_composition(self): self.update_references() indicies = DiscussionIndex.objects.all() - self.assertEquals(indicies.count(), 1) + self.assertEqual(indicies.count(), 1) index = indicies.first() self.assertIsNone(index.participant) self.assertIsNone(index.comment) - self.assertEquals(index.collaboration, self.collaboration) - self.assertEquals(index.asset, self.asset) + self.assertEqual(index.collaboration, self.collaboration) + self.assertEqual(index.asset, self.asset) - self.assertEquals(index.get_type_label(), 'project') - self.assertEquals(index.content_object, self.asset) - self.assertEquals(index.clump_parent(), self.project) + self.assertEqual(index.get_type_label(), 'project') + self.assertEqual(index.content_object, self.asset) + self.assertEqual(index.clump_parent(), self.project) self.assertIsNone(index.get_parent_url()) - self.assertEquals(index.body, '') + self.assertEqual(index.body, '') def test_selection_assignment(self): AssignmentItemFactory(project=self.project, asset=self.asset) @@ -480,19 +480,19 @@ def test_selection_assignment(self): self.update_references() indicies = DiscussionIndex.objects.all() - self.assertEquals(indicies.count(), 1) + self.assertEqual(indicies.count(), 1) index = indicies[0] self.assertIsNone(index.participant) self.assertIsNone(index.comment) - self.assertEquals(index.collaboration, self.collaboration) - self.assertEquals(index.asset, self.asset) + self.assertEqual(index.collaboration, self.collaboration) + self.assertEqual(index.asset, self.asset) - self.assertEquals(index.get_type_label(), 'project') - self.assertEquals(index.content_object, self.asset) - self.assertEquals(index.clump_parent(), self.project) + self.assertEqual(index.get_type_label(), 'project') + self.assertEqual(index.content_object, self.asset) + self.assertEqual(index.clump_parent(), self.project) self.assertIsNone(index.get_parent_url()) - self.assertEquals(index.body, '') + self.assertEqual(index.body, '') def test_selection_assignment_response(self): ProjectNoteFactory(project=self.project, annotation=self.note2) @@ -500,19 +500,19 @@ def test_selection_assignment_response(self): self.update_references() indicies = DiscussionIndex.objects.all() - self.assertEquals(indicies.count(), 1) + self.assertEqual(indicies.count(), 1) index = indicies[0] self.assertIsNone(index.participant) self.assertIsNone(index.comment) - self.assertEquals(index.collaboration, self.collaboration) - self.assertEquals(index.asset, self.asset2) + self.assertEqual(index.collaboration, self.collaboration) + self.assertEqual(index.asset, self.asset2) - self.assertEquals(index.get_type_label(), 'project') - self.assertEquals(index.content_object, self.asset2) - self.assertEquals(index.clump_parent(), self.project) + self.assertEqual(index.get_type_label(), 'project') + self.assertEqual(index.content_object, self.asset2) + self.assertEqual(index.clump_parent(), self.project) self.assertIsNone(index.get_parent_url()) - self.assertEquals(index.body, '') + self.assertEqual(index.body, '') def test_sequence(self): sa = SequenceAssetFactory(spine=self.note) @@ -522,52 +522,52 @@ def test_sequence(self): self.update_references() indicies = DiscussionIndex.objects.all() - self.assertEquals(indicies.count(), 2) + self.assertEqual(indicies.count(), 2) index = indicies[0] self.assertIsNone(index.participant) self.assertIsNone(index.comment) - self.assertEquals(index.collaboration, self.collaboration) - self.assertEquals(index.asset, self.asset) + self.assertEqual(index.collaboration, self.collaboration) + self.assertEqual(index.asset, self.asset) - self.assertEquals(index.get_type_label(), 'project') - self.assertEquals(index.content_object, self.asset) - self.assertEquals(index.clump_parent(), self.project) + self.assertEqual(index.get_type_label(), 'project') + self.assertEqual(index.content_object, self.asset) + self.assertEqual(index.clump_parent(), self.project) self.assertIsNone(index.get_parent_url()) - self.assertEquals(index.body, '') + self.assertEqual(index.body, '') index = indicies[1] self.assertIsNone(index.participant) self.assertIsNone(index.comment) - self.assertEquals(index.collaboration, self.collaboration) - self.assertEquals(index.asset, self.asset2) + self.assertEqual(index.collaboration, self.collaboration) + self.assertEqual(index.asset, self.asset2) - self.assertEquals(index.get_type_label(), 'project') - self.assertEquals(index.content_object, self.asset2) - self.assertEquals(index.clump_parent(), self.project) + self.assertEqual(index.get_type_label(), 'project') + self.assertEqual(index.content_object, self.asset2) + self.assertEqual(index.clump_parent(), self.project) self.assertIsNone(index.get_parent_url()) - self.assertEquals(index.body, '') + self.assertEqual(index.body, '') def test_discussion_references(self): self.create_discussion(self.sample_course, self.instructor_one) indicies = DiscussionIndex.objects.all() - self.assertEquals(indicies.count(), 1) + self.assertEqual(indicies.count(), 1) index = indicies.first() comment = ThreadedComment.objects.first() - self.assertEquals(index.participant, comment.user) - self.assertEquals(index.comment, comment.comment_ptr) - self.assertEquals(index.collaboration, comment.content_object) + self.assertEqual(index.participant, comment.user) + self.assertEqual(index.comment, comment.comment_ptr) + self.assertEqual(index.collaboration, comment.content_object) self.assertIsNone(index.asset) - self.assertEquals(index.get_type_label(), 'discussion') - self.assertEquals(index.content_object, comment.content_object) - self.assertEquals(index.clump_parent(group_by='discussion'), - comment.content_object) - self.assertEquals(index.clump_parent(), - comment.content_object) - self.assertEquals(index.get_parent_url(), - '/discussion/%s' % comment.id) - self.assertEquals(index.body, '') + self.assertEqual(index.get_type_label(), 'discussion') + self.assertEqual(index.content_object, comment.content_object) + self.assertEqual(index.clump_parent(group_by='discussion'), + comment.content_object) + self.assertEqual(index.clump_parent(), + comment.content_object) + self.assertEqual(index.get_parent_url(), + '/discussion/%s' % comment.id) + self.assertEqual(index.body, '') diff --git a/mediathread/djangosherd/tests/test_views.py b/mediathread/djangosherd/tests/test_views.py index ac4d0c31dc..5dddf6a178 100644 --- a/mediathread/djangosherd/tests/test_views.py +++ b/mediathread/djangosherd/tests/test_views.py @@ -28,12 +28,12 @@ def test_create_annotation(self): request = RequestFactory().post('/', self.data) request.user = self.student_one response = create_annotation(request) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) note = SherdNote.objects.get(title='Annotation Test') - self.assertEquals(note.range1, -4.5) - self.assertEquals(note.range2, 23) - self.assertEquals(note.tags, 'foo,bar') + self.assertEqual(note.range1, -4.5) + self.assertEqual(note.range2, 23) + self.assertEqual(note.tags, 'foo,bar') def test_create_annotation_with_project(self): project = ProjectFactory() @@ -42,7 +42,7 @@ def test_create_annotation_with_project(self): request = RequestFactory().post('/', self.data) request.user = self.student_one response = create_annotation(request) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) note = SherdNote.objects.get(title='Annotation Test') ProjectNote.objects.get(annotation=note, project=project) @@ -52,13 +52,13 @@ def test_create_annotation_ajax(self): HTTP_X_REQUESTED_WITH='XMLHttpRequest') request.user = self.student_one response = create_annotation(request) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) note = SherdNote.objects.get(title='Annotation Test') the_json = loads(response.content) - self.assertEquals(the_json['asset']['id'], self.asset.id) - self.assertEquals(the_json['annotation']['id'], note.id) + self.assertEqual(the_json['asset']['id'], self.asset.id) + self.assertEqual(the_json['annotation']['id'], note.id) def test_delete_annotation(self): note = SherdNoteFactory( @@ -68,11 +68,11 @@ def test_delete_annotation(self): request = RequestFactory().post('/', {'next': 'foo'}) request.user = self.student_two response = delete_annotation(request, note.id) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) request.user = self.student_one response = delete_annotation(request, note.id) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) with self.assertRaises(SherdNote.DoesNotExist): SherdNote.objects.get(title='Selection') @@ -91,15 +91,15 @@ def test_edit_annotation(self): edit_annotation(request, 123) response = edit_annotation(request, note.id) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # via post request.user = self.student_one response = edit_annotation(request, note.id) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) note.refresh_from_db() - self.assertEquals(note.range1, -4.5) - self.assertEquals(note.tags, 'foo,bar') + self.assertEqual(note.range1, -4.5) + self.assertEqual(note.tags, 'foo,bar') # via ajax data = {'annotation-range2': 7} @@ -107,9 +107,9 @@ def test_edit_annotation(self): HTTP_X_REQUESTED_WITH='XMLHttpRequest') request.user = self.student_one response = edit_annotation(request, note.id) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = loads(response.content) - self.assertEquals(the_json['asset']['id'], self.asset.id) - self.assertEquals(the_json['annotation']['id'], note.id) + self.assertEqual(the_json['asset']['id'], self.asset.id) + self.assertEqual(the_json['annotation']['id'], note.id) note.refresh_from_db() - self.assertEquals(note.range2, 7) + self.assertEqual(note.range2, 7) diff --git a/mediathread/djangosherd/views.py b/mediathread/djangosherd/views.py index d46a0d0452..e5f5b92b1f 100755 --- a/mediathread/djangosherd/views.py +++ b/mediathread/djangosherd/views.py @@ -10,6 +10,7 @@ from mediathread.djangosherd.models import Asset, SherdNote from mediathread.projects.models import ProjectNote, Project from mediathread.taxonomy.views import update_vocabulary_terms +from mediathread.util import is_ajax formfields = "tags title range1 range2 body annotation_data".split() @@ -63,7 +64,7 @@ def create_annotation(request): project = get_object_or_404(Project, id=project_id) ProjectNote.objects.create(project=project, annotation=annotation) - if request.is_ajax(): + if is_ajax(request): response = {'asset': {'id': asset.id}, 'annotation': {'id': annotation.id}} return HttpResponse(json.dumps(response), @@ -103,7 +104,7 @@ def edit_annotation(request, annot_id): update_annotation(request, annotation) - if request.is_ajax(): + if is_ajax(request): response = {'asset': {'id': annotation.asset_id}, 'annotation': {'id': annotation.id}} return HttpResponse(json.dumps(response), diff --git a/mediathread/main/clumper.py b/mediathread/main/clumper.py index 73f55bbf3c..c799f70194 100644 --- a/mediathread/main/clumper.py +++ b/mediathread/main/clumper.py @@ -1,6 +1,6 @@ from functools import total_ordering, cmp_to_key -from django.utils.encoding import smart_text +from django.utils.encoding import smart_str from django_comments.models import Comment from mediathread.assetmgr.models import Asset from mediathread.djangosherd.models import SherdNote, DiscussionIndex @@ -60,7 +60,7 @@ def __lt__(self, other): return self.order_by(self.things[0], other.things[0]) < 0 def __str__(self): - return smart_text(self.things[0]) + return smart_str(self.things[0]) def append(self, obj): if len(self.things) < 4: diff --git a/mediathread/main/management/commands/integrationserver.py b/mediathread/main/management/commands/integrationserver.py index fe927eb730..6cf859fe39 100644 --- a/mediathread/main/management/commands/integrationserver.py +++ b/mediathread/main/management/commands/integrationserver.py @@ -22,7 +22,7 @@ class Command(BaseCommand): help = 'Runs a development server with data created by factories.' - requires_system_checks = False + requires_system_checks = [] def add_arguments(self, parser): parser.add_argument( diff --git a/mediathread/main/tests/test_api.py b/mediathread/main/tests/test_api.py index eb92ce220b..c2363fa182 100644 --- a/mediathread/main/tests/test_api.py +++ b/mediathread/main/tests/test_api.py @@ -23,7 +23,7 @@ def test_render_one(self): member = UserResource().render_one(None, student_one) - self.assertEquals(member['public_name'], "One, Student") + self.assertEqual(member['public_name'], "One, Student") def test_render_list(self): u = UserFactory(username='test_student_one', @@ -50,13 +50,13 @@ def test_render_list(self): members = UserResource().render_list(None, sample_course.members) - self.assertEquals(len(members), 6) - self.assertEquals(members[0]['public_name'], "test_instructor_two") - self.assertEquals(members[1]['public_name'], "test_student_three") - self.assertEquals(members[2]['public_name'], "Assistant, Teacher's") - self.assertEquals(members[3]['public_name'], "One, Instructor") - self.assertEquals(members[4]['public_name'], "One, Student") - self.assertEquals(members[5]['public_name'], "Two, Student") + self.assertEqual(len(members), 6) + self.assertEqual(members[0]['public_name'], "test_instructor_two") + self.assertEqual(members[1]['public_name'], "test_student_three") + self.assertEqual(members[2]['public_name'], "Assistant, Teacher's") + self.assertEqual(members[3]['public_name'], "One, Instructor") + self.assertEqual(members[4]['public_name'], "One, Student") + self.assertEqual(members[5]['public_name'], "Two, Student") def test_get_course_list(self): g1 = GroupFactory(name="group1") @@ -69,4 +69,4 @@ def test_get_course_list(self): with self.settings(SERVER_ADMIN_SECRETKEYS=secrets): url = '/api/user/courses?user=instructor_one&secret=foobar' response = self.client.get(url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) diff --git a/mediathread/main/tests/test_course_details.py b/mediathread/main/tests/test_course_details.py index 05a7e351d5..b06868301e 100644 --- a/mediathread/main/tests/test_course_details.py +++ b/mediathread/main/tests/test_course_details.py @@ -55,8 +55,8 @@ def allow_item_download(self): def test_course_information_title(self): # default - self.assertEquals(course_information_title(self.sample_course), - COURSE_INFORMATION_TITLE_DEFAULT) + self.assertEqual(course_information_title(self.sample_course), + COURSE_INFORMATION_TITLE_DEFAULT) def test_cached_course_is_member(self): self.assertTrue(cached_course_is_member(self.sample_course, diff --git a/mediathread/main/tests/test_forms.py b/mediathread/main/tests/test_forms.py index b0617d1bc5..1bb0fc0357 100644 --- a/mediathread/main/tests/test_forms.py +++ b/mediathread/main/tests/test_forms.py @@ -17,7 +17,7 @@ def test_contact_us_form(self): } form.clean() - self.assertEquals(len(form._errors.keys()), 2) + self.assertEqual(len(form._errors.keys()), 2) self.assertTrue('decoy' in form._errors) self.assertTrue('category' in form._errors) @@ -34,7 +34,7 @@ def test_course_manage_materials_form(self): } form.clean() - self.assertEquals(len(form._errors.keys()), 1) + self.assertEqual(len(form._errors.keys()), 1) self.assertTrue('username' in form._errors) form = CourseDeleteMaterialsForm(request=request) @@ -45,7 +45,7 @@ def test_course_manage_materials_form(self): } form.clean() - self.assertEquals(len(form._errors.keys()), 0) + self.assertEqual(len(form._errors.keys()), 0) def test_accept_invitation_form(self): form = AcceptInvitationForm() @@ -57,7 +57,7 @@ def test_accept_invitation_form(self): 'password2': 'test', 'username': 'testname' } form.clean() - self.assertEquals(len(form._errors.keys()), 0) + self.assertEqual(len(form._errors.keys()), 0) def test_accept_invitation_form_duplicate_username(self): user = UserFactory() @@ -70,7 +70,7 @@ def test_accept_invitation_form_duplicate_username(self): 'password2': 'test', 'username': user.username } form.clean() - self.assertEquals(len(form._errors.keys()), 1) + self.assertEqual(len(form._errors.keys()), 1) self.assertTrue('username' in form._errors) def test_accept_invitation_form_invalid_passwords(self): @@ -86,6 +86,6 @@ def test_accept_invitation_form_invalid_passwords(self): 'username': 'testname' } form.clean() - self.assertEquals(len(form._errors.keys()), 2) + self.assertEqual(len(form._errors.keys()), 2) self.assertTrue('password1' in form._errors) self.assertTrue('password2' in form._errors) diff --git a/mediathread/main/tests/test_mixins.py b/mediathread/main/tests/test_mixins.py index b37b65bb0f..c6fd4476f7 100644 --- a/mediathread/main/tests/test_mixins.py +++ b/mediathread/main/tests/test_mixins.py @@ -54,7 +54,7 @@ def assert_visible_notes(self, viewer, expected_notes): self.mixin.visible_assets_and_notes(self.mixin.request, self.assets) - self.assertEquals(notes.count(), len(expected_notes)) + self.assertEqual(notes.count(), len(expected_notes)) for n in expected_notes: self.assertTrue(n in notes) diff --git a/mediathread/main/tests/test_models.py b/mediathread/main/tests/test_models.py index d13a3572a3..365df09ebd 100644 --- a/mediathread/main/tests/test_models.py +++ b/mediathread/main/tests/test_models.py @@ -2,7 +2,7 @@ from django.test.client import RequestFactory from django.test.testcases import TestCase -from django.utils.encoding import smart_text +from django.utils.encoding import smart_str from mediathread.factories import ( MediathreadTestMixin, UserFactory, UserProfileFactory, CourseFactory, @@ -19,13 +19,13 @@ def setUp(self): self.setup_sample_course() def test_get_setting_default_value(self): - self.assertEquals(UserSetting.get_setting(self.student_one, '1', 0), 0) + self.assertEqual(UserSetting.get_setting(self.student_one, '1', 0), 0) def test_get_setting(self): # default - name='Test', value=1 UserSetting.set_setting(self.student_one, 'Test', value=1) - self.assertEquals(UserSetting.get_setting(self.student_one, 'Test', 0), - '1') + self.assertEqual(UserSetting.get_setting(self.student_one, 'Test', 0), + '1') UserSetting.set_setting(self.student_one, 'Test', value='True') self.assertTrue(UserSetting.get_setting(self.student_one, 'Test', 0)) @@ -43,7 +43,7 @@ class UserProfileTest(TestCase): def test_unicode(self): user = UserFactory(username='johndoe') profile = UserProfileFactory(user=user) - self.assertEquals(smart_text(profile), 'johndoe') + self.assertEqual(smart_str(profile), 'johndoe') class UserRegistrationTest(TestCase): @@ -60,12 +60,12 @@ def test_user_registered_callback(self): user_registered_callback(None, user, request) user.refresh_from_db() - self.assertEquals(user.first_name, 'John') - self.assertEquals(user.last_name, 'Doe') - self.assertEquals(user.profile.title, 'Professor') - self.assertEquals(user.profile.institution, 'Columbia University') - self.assertEquals(user.profile.referred_by, 'Sam Smith') - self.assertEquals(user.profile.user_story, 'Sample user story') + self.assertEqual(user.first_name, 'John') + self.assertEqual(user.last_name, 'Doe') + self.assertEqual(user.profile.title, 'Professor') + self.assertEqual(user.profile.institution, 'Columbia University') + self.assertEqual(user.profile.referred_by, 'Sam Smith') + self.assertEqual(user.profile.user_story, 'Sample user story') def test_user_activated_callback(self): course = CourseFactory(title='Mediathread Guest Sandbox') diff --git a/mediathread/main/tests/test_util.py b/mediathread/main/tests/test_util.py index 46ab765688..f6874c4d37 100644 --- a/mediathread/main/tests/test_util.py +++ b/mediathread/main/tests/test_util.py @@ -13,13 +13,13 @@ def test_send_template_email(self): {'name': 'bar'}, 'abc123@columbia.edu') self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'foo') - self.assertEquals(mail.outbox[0].from_email, - 'mediathread@example.com') + self.assertEqual(mail.outbox[0].from_email, + 'mediathread@example.com') self.assertTrue(mail.outbox[0].to, ['abc123@columbia.edu']) def test_user_display_name(self): user = UserFactory() - self.assertEquals(user_display_name(user), user.username) + self.assertEqual(user_display_name(user), user.username) user = UserFactory(first_name='John', last_name='Smith') - self.assertEquals(user_display_name(user), 'John Smith') + self.assertEqual(user_display_name(user), 'John Smith') diff --git a/mediathread/main/tests/test_views.py b/mediathread/main/tests/test_views.py index d9edd7027b..16400bfa32 100644 --- a/mediathread/main/tests/test_views.py +++ b/mediathread/main/tests/test_views.py @@ -21,7 +21,7 @@ from django.http.response import Http404 from django.test import TestCase, override_settings from django.test.client import RequestFactory -from django.utils.encoding import smart_text +from django.utils.encoding import smart_str from django.utils.html import escape from django.utils.text import slugify import factory @@ -62,7 +62,7 @@ class SimpleViewTest(TestCase): def test_index(self): # Mediathread splash page should appear response = self.client.get('/') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) def test_500(self): with self.assertRaises(Exception): @@ -124,12 +124,12 @@ def test_as_student(self): password='test')) response = self.client.get( reverse('dashboard-migrate', args=[self.sample_course.pk])) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) def test_not_logged_in(self): response = self.client.get( reverse('dashboard-migrate', args=[self.sample_course.pk])) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_get_context_data(self): request = RequestFactory().get( @@ -142,27 +142,27 @@ def test_get_context_data(self): ctx = view.get_context_data() - self.assertEquals(len(ctx['current_course_faculty']), 3) - self.assertEquals(ctx['current_course_faculty'][0].username, - 'instructor_one') - self.assertEquals(ctx['current_course_faculty'][1].username, - 'instructor_three') - self.assertEquals(ctx['current_course_faculty'][2].username, - 'instructor_two') + self.assertEqual(len(ctx['current_course_faculty']), 3) + self.assertEqual(ctx['current_course_faculty'][0].username, + 'instructor_one') + self.assertEqual(ctx['current_course_faculty'][1].username, + 'instructor_three') + self.assertEqual(ctx['current_course_faculty'][2].username, + 'instructor_two') - self.assertEquals(len(ctx['available_courses']), 2) - self.assertEquals(ctx['available_courses'][0].title, - 'Alternate Course') - self.assertEquals(ctx['available_courses'][1].title, - 'Sample Course') + self.assertEqual(len(ctx['available_courses']), 2) + self.assertEqual(ctx['available_courses'][0].title, + 'Alternate Course') + self.assertEqual(ctx['available_courses'][1].title, + 'Sample Course') request.user = self.superuser ctx = view.get_context_data() - self.assertEquals(len(ctx['available_courses']), 2) - self.assertEquals(ctx['available_courses'][0].title, - 'Alternate Course') - self.assertEquals(ctx['available_courses'][1].title, - 'Sample Course') + self.assertEqual(len(ctx['available_courses']), 2) + self.assertEqual(ctx['available_courses'][0].title, + 'Alternate Course') + self.assertEqual(ctx['available_courses'][1].title, + 'Sample Course') def test_post_invalidcourse(self): data = {'fromCourse': 42} @@ -235,23 +235,23 @@ def test_migrate_asset(self): the_json = json.loads(response.content) self.assertTrue(the_json['success']) - self.assertEquals(the_json['asset_count'], 1) - self.assertEquals(the_json['project_count'], 0) - self.assertEquals(the_json['note_count'], 3) + self.assertEqual(the_json['asset_count'], 1) + self.assertEqual(the_json['project_count'], 0) + self.assertEqual(the_json['note_count'], 3) new_asset = Asset.objects.get(course=self.alt_course, title=self.asset1.title) - self.assertEquals(new_asset.sherdnote_set.count(), 2) + self.assertEqual(new_asset.sherdnote_set.count(), 2) # verify there is a global annotation for instructor three ga = new_asset.global_annotation(self.instructor_three, False) self.assertIsNone(ga.title) - self.assertEquals(ga.tags, '') + self.assertEqual(ga.tags, '') self.assertIsNone(ga.body) # verify there is a selection annotation for instructor three note = new_asset.sherdnote_set.get(title=self.instructor_note.title) - self.assertEquals(note.tags, '') + self.assertEqual(note.tags, '') self.assertIsNone(note.body) self.assertFalse(note.is_global_annotation) @@ -278,14 +278,14 @@ def test_migrate_with_tags(self): new_asset = Asset.objects.get(course=self.alt_course, title=self.asset1.title) - self.assertEquals(new_asset.sherdnote_set.count(), 2) + self.assertEqual(new_asset.sherdnote_set.count(), 2) note = new_asset.sherdnote_set.get(title=self.instructor_note.title) - self.assertEquals(note.tags, self.instructor_note.tags) + self.assertEqual(note.tags, self.instructor_note.tags) self.assertIsNone(note.body) note = new_asset.global_annotation(self.instructor_three, False) - self.assertEquals( + self.assertEqual( note.tags, ',image, instructor_one_global,,instructor_two_global,') self.assertIsNone(note.body) @@ -313,15 +313,15 @@ def test_migrate_with_notes(self): new_asset = Asset.objects.get(course=self.alt_course, title=self.asset1.title) - self.assertEquals(new_asset.sherdnote_set.count(), 2) + self.assertEqual(new_asset.sherdnote_set.count(), 2) note = new_asset.sherdnote_set.get(title=self.instructor_note.title) - self.assertEquals(note.tags, '') - self.assertEquals(note.body, self.instructor_note.body) + self.assertEqual(note.tags, '') + self.assertEqual(note.body, self.instructor_note.body) note = new_asset.global_annotation(self.instructor_three, False) - self.assertEquals(note.tags, '') - self.assertEquals( + self.assertEqual(note.tags, '') + self.assertEqual( note.body, 'instructor one global noteinstructor two global note') @@ -348,17 +348,17 @@ def test_migrate_tags_and_notes(self): new_asset = Asset.objects.get(course=self.alt_course, title=self.asset1.title) - self.assertEquals(new_asset.sherdnote_set.count(), 2) + self.assertEqual(new_asset.sherdnote_set.count(), 2) note = new_asset.sherdnote_set.get(title=self.instructor_note.title) - self.assertEquals(note.tags, self.instructor_note.tags) - self.assertEquals(note.body, self.instructor_note.body) + self.assertEqual(note.tags, self.instructor_note.tags) + self.assertEqual(note.body, self.instructor_note.body) note = new_asset.global_annotation(self.instructor_three, False) - self.assertEquals( + self.assertEqual( note.tags, ',image, instructor_one_global,,instructor_two_global,') - self.assertEquals( + self.assertEqual( note.body, 'instructor one global noteinstructor two global note') @@ -369,7 +369,7 @@ def test_migrate_project(self): self.add_citation(self.project1, self.instructor_note) self.add_citation(self.project1, self.student_note) - self.assertEquals(len(self.project1.citations()), 2) + self.assertEqual(len(self.project1.citations()), 2) data = { 'fromCourse': self.sample_course.id, @@ -391,28 +391,28 @@ def test_migrate_project(self): the_json = json.loads(response.content) self.assertTrue(the_json['success']) - self.assertEquals(the_json['asset_count'], 1) - self.assertEquals(the_json['project_count'], 1) - self.assertEquals(the_json['note_count'], 2) + self.assertEqual(the_json['asset_count'], 1) + self.assertEqual(the_json['project_count'], 1) + self.assertEqual(the_json['note_count'], 2) new_asset = Asset.objects.get(course=self.alt_course, title=self.asset1.title) - self.assertEquals(new_asset.sherdnote_set.count(), 3) + self.assertEqual(new_asset.sherdnote_set.count(), 3) new_note = new_asset.sherdnote_set.get(title=self.student_note.title) - self.assertEquals(new_note.author, self.instructor_three) + self.assertEqual(new_note.author, self.instructor_three) new_note = new_asset.sherdnote_set.get( title=self.instructor_note.title) - self.assertEquals(new_note.author, self.instructor_three) + self.assertEqual(new_note.author, self.instructor_three) new_note = new_asset.sherdnote_set.get(title=None) - self.assertEquals(new_note.author, self.instructor_three) + self.assertEqual(new_note.author, self.instructor_three) self.assertTrue(new_note.is_global_annotation) new_project = Project.objects.get( course=self.alt_course, title=self.project1.title) - self.assertEquals(len(new_project.citations()), 2) + self.assertEqual(len(new_project.citations()), 2) def test_migrate_materials_view_student(self): self.assertTrue(self.client.login(username=self.student_one.username, @@ -421,7 +421,7 @@ def test_migrate_materials_view_student(self): response = self.client.get('/dashboard/migrate/materials/%s/' % self.sample_course.id, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) def test_migrate_materials_sample_course(self): flv = AssetFactory.create(course=self.sample_course, @@ -443,25 +443,25 @@ def test_migrate_materials_sample_course(self): set_course_url = '/?set_course=%s&next=/' % \ self.sample_course.group.name response = self.client.get(set_course_url, follow=True) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) url = '/dashboard/migrate/materials/%s/' % self.sample_course.id response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) - self.assertEquals(the_json['course']['title'], 'Sample Course') - self.assertEquals(len(the_json['assets']), 1) + self.assertEqual(the_json['course']['title'], 'Sample Course') + self.assertEqual(len(the_json['assets']), 1) - self.assertEquals(the_json['assets'][0]['title'], - self.asset1.title) - self.assertEquals(the_json['assets'][0]['annotation_count'], 1) + self.assertEqual(the_json['assets'][0]['title'], + self.asset1.title) + self.assertEqual(the_json['assets'][0]['annotation_count'], 1) - self.assertEquals(len(the_json['projects']), 1) - self.assertEquals(the_json['projects'][0]['title'], - self.project2.title) + self.assertEqual(len(the_json['projects']), 1) + self.assertEqual(the_json['projects'][0]['title'], + self.project2.title) def test_migrate_materials_alternate_course(self): self.assertTrue(self.client.login( @@ -470,18 +470,18 @@ def test_migrate_materials_alternate_course(self): set_course_url = '/?set_course=%s&next=/' % \ self.alt_course.group.name response = self.client.get(set_course_url, follow=True) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) url = '/dashboard/migrate/materials/%s/' % self.alt_course.id response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) - self.assertEquals(the_json['course']['title'], 'Alternate Course') - self.assertEquals(len(the_json['assets']), 0) - self.assertEquals(len(the_json['projects']), 0) + self.assertEqual(the_json['course']['title'], 'Alternate Course') + self.assertEqual(len(the_json['assets']), 0) + self.assertEqual(len(the_json['projects']), 0) class ContactUsViewTest(TestCase): @@ -508,9 +508,9 @@ def test_get_initial_not_anonymous(self): initial = view.get_initial() self.assertIsNotNone(initial['issue_date']) - self.assertEquals(initial['name'], 'Foo Bar') - self.assertEquals(initial['email'], 'foo@bar.com') - self.assertEquals(initial['username'], view.request.user.username) + self.assertEqual(initial['name'], 'Foo Bar') + self.assertEqual(initial['email'], 'foo@bar.com') + self.assertEqual(initial['username'], view.request.user.username) # a subsequent call using an anonymous session returns a clean initial view.request.session = {} @@ -540,17 +540,17 @@ def test_form_valid(self): self.assertEqual(mail.outbox[0].subject, 'Mediathread Support Request') - self.assertEquals(mail.outbox[0].from_email, - settings.SERVER_EMAIL) - self.assertEquals(mail.outbox[0].to, - [settings.CONTACT_US_EMAIL]) + self.assertEqual(mail.outbox[0].from_email, + settings.SERVER_EMAIL) + self.assertEqual(mail.outbox[0].to, + [settings.CONTACT_US_EMAIL]) self.assertEqual(mail.outbox[1].subject, 'Mediathread Contact Us Request') - self.assertEquals(mail.outbox[1].from_email, - settings.SERVER_EMAIL) - self.assertEquals(mail.outbox[1].to, - ['sender@ccnmtl.columbia.edu']) + self.assertEqual(mail.outbox[1].from_email, + settings.SERVER_EMAIL) + self.assertEqual(mail.outbox[1].to, + ['sender@ccnmtl.columbia.edu']) def test_form_valid_with_support_destination(self): view = ContactUsView() @@ -571,17 +571,17 @@ def test_form_valid_with_support_destination(self): self.assertEqual(mail.outbox[0].subject, 'Mediathread Support Request') - self.assertEquals(mail.outbox[0].from_email, - settings.SERVER_EMAIL) - self.assertEquals(mail.outbox[0].to, - [settings.CONTACT_US_EMAIL]) + self.assertEqual(mail.outbox[0].from_email, + settings.SERVER_EMAIL) + self.assertEqual(mail.outbox[0].to, + [settings.CONTACT_US_EMAIL]) self.assertEqual(mail.outbox[1].subject, 'Mediathread Contact Us Request') - self.assertEquals(mail.outbox[1].from_email, - settings.SERVER_EMAIL) - self.assertEquals(mail.outbox[1].to, - [settings.SUPPORT_DESTINATION]) + self.assertEqual(mail.outbox[1].from_email, + settings.SERVER_EMAIL) + self.assertEqual(mail.outbox[1].to, + [settings.SUPPORT_DESTINATION]) class CourseManageSourcesViewTest(MediathreadTestMixin, TestCase): @@ -594,7 +594,7 @@ def setUp(self): def test_not_logged_in(self): response = self.client.get( reverse('course-manage-sources', args=[self.sample_course.pk])) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_as_student(self): self.assertTrue( @@ -602,7 +602,7 @@ def test_as_student(self): password='test')) response = self.client.get( reverse('course-manage-sources', args=[self.sample_course.pk])) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) def test_get_context(self): request = RequestFactory().get( @@ -614,9 +614,9 @@ def test_get_context(self): view.request = request ctx = view.get_context_data() - self.assertEquals(ctx['course'], self.sample_course) - self.assertEquals(list(ctx['suggested_collections']), []) - self.assertEquals(ctx['space_viewer'], self.instructor_one) + self.assertEqual(ctx['course'], self.sample_course) + self.assertEqual(list(ctx['suggested_collections']), []) + self.assertEqual(ctx['space_viewer'], self.instructor_one) self.assertFalse(ctx['is_staff']) self.assertIsNotNone(ctx['uploader']) @@ -656,7 +656,7 @@ def setUp(self): def test_not_logged_in(self): response = self.client.get(self.url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertContains(response, '"current": false') self.assertContains(response, '"logged_in": false') @@ -670,7 +670,7 @@ def test_logged_in_no_course(self): password='test') response = self.client.get(self.url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertContains(response, '"current": false') self.assertContains(response, '"logged_in": true') @@ -688,7 +688,7 @@ def test_logged_in_with_course(self): DJANGOSHERD_FLICKR_APIKEY="456", BOOKMARKLET_VERSION="2"): response = self.client.get(self.url, {'version': 2}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertContains(response, '"current": true') self.assertContains(response, '"logged_in": true') @@ -802,16 +802,16 @@ def setUp(self): def verify_alt_course_materials(self): # alt course assets, notes & projects are intact assets = Asset.objects.filter(course=self.alt_course) - self.assertEquals(self.alt_asset, assets.first()) + self.assertEqual(self.alt_asset, assets.first()) notes = SherdNote.objects.filter(asset__course=self.alt_course) - self.assertEquals(self.alt_note, notes.first()) + self.assertEqual(self.alt_note, notes.first()) projects = Project.objects.filter(course=self.alt_course) - self.assertEquals(self.alt_composition, projects.first()) + self.assertEqual(self.alt_composition, projects.first()) - self.assertEquals(get_course_discussions(self.alt_course), - [self.alt_discussion]) + self.assertEqual(get_course_discussions(self.alt_course), + [self.alt_discussion]) comments = ThreadedComment.objects.filter(parent=self.alt_discussion) - self.assertEquals(self.alt_comment, comments.first()) + self.assertEqual(self.alt_comment, comments.first()) def test_access(self): url = reverse('course-delete-materials', args=[self.sample_course.pk]) @@ -819,7 +819,7 @@ def test_access(self): self.client.login(username=self.student_one.username, password='test') response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_clear_all(self): url = reverse('course-delete-materials', args=[self.sample_course.pk]) @@ -829,21 +829,21 @@ def test_clear_all(self): self.switch_course(self.client, self.sample_course) response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) messages = [m.message for m in get_messages(response.wsgi_request)] self.assertIn('All requested materials were deleted', messages[0]) assets = Asset.objects.filter(course=self.sample_course) - self.assertEquals(assets.count(), 0) + self.assertEqual(assets.count(), 0) notes = SherdNote.objects.filter(asset__course=self.sample_course) - self.assertEquals(notes.count(), 0) + self.assertEqual(notes.count(), 0) projects = Project.objects.filter(course=self.sample_course) - self.assertEquals(projects.count(), 0) + self.assertEqual(projects.count(), 0) - self.assertEquals(get_course_discussions(self.sample_course), - [self.discussion]) + self.assertEqual(get_course_discussions(self.sample_course), + [self.discussion]) comments = ThreadedComment.objects.filter(parent=self.discussion) - self.assertEquals(comments.count(), 0) + self.assertEqual(comments.count(), 0) self.verify_alt_course_materials() @@ -858,27 +858,27 @@ def test_clear_student_only(self): self.switch_course(self.client, self.sample_course) response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) messages = [m.message for m in get_messages(response.wsgi_request)] self.assertIn('All requested materials were deleted', messages[0]) assets = Asset.objects.filter(course=self.sample_course) - self.assertEquals(assets.count(), 1) - self.assertEquals(assets.first(), self.faculty_asset) + self.assertEqual(assets.count(), 1) + self.assertEqual(assets.first(), self.faculty_asset) notes = SherdNote.objects.filter(asset__course=self.sample_course) - self.assertEquals(notes.count(), 1) - self.assertEquals(notes.first(), self.faculty_note1) + self.assertEqual(notes.count(), 1) + self.assertEqual(notes.first(), self.faculty_note1) projects = Project.objects.filter(course=self.sample_course) - self.assertEquals(projects.count(), 2) + self.assertEqual(projects.count(), 2) self.assertTrue(self.faculty_composition in projects.all()) self.assertTrue(self.assignment in projects.all()) - self.assertEquals(get_course_discussions(self.sample_course), - [self.discussion]) + self.assertEqual(get_course_discussions(self.sample_course), + [self.discussion]) comments = ThreadedComment.objects.filter(parent=self.discussion) - self.assertEquals(comments.count(), 0) + self.assertEqual(comments.count(), 0) self.verify_alt_course_materials() @@ -896,22 +896,22 @@ def test_clear_and_delete_course(self): self.switch_course(self.client, self.sample_course) response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) messages = [m.message for m in get_messages(response.wsgi_request)] self.assertIn('Sample Course and requested materials were deleted', messages[0]) assets = Asset.objects.filter(course=self.sample_course) - self.assertEquals(assets.count(), 0) + self.assertEqual(assets.count(), 0) notes = SherdNote.objects.filter(asset__course=self.sample_course) - self.assertEquals(notes.count(), 0) + self.assertEqual(notes.count(), 0) projects = Project.objects.filter(course=self.sample_course) - self.assertEquals(projects.count(), 0) + self.assertEqual(projects.count(), 0) - self.assertEquals(get_course_discussions(self.sample_course), - [self.discussion]) + self.assertEqual(get_course_discussions(self.sample_course), + [self.discussion]) comments = ThreadedComment.objects.filter(parent=self.discussion) - self.assertEquals(comments.count(), 0) + self.assertEqual(comments.count(), 0) self.verify_alt_course_materials() self.assertFalse( @@ -935,7 +935,7 @@ def test_get(self): self.client.login(username=self.instructor_one.username, password='test') response = self.client.get(self.url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) def test_roster_view_get_queryset(self): request = RequestFactory().get(self.url) @@ -946,7 +946,7 @@ def test_roster_view_get_queryset(self): view.request = request qs = view.get_queryset() - self.assertEquals(qs.count(), self.sample_course.members.count()) + self.assertEqual(qs.count(), self.sample_course.members.count()) def test_promote_demote_users(self): self.client.login(username=self.instructor_one.username, @@ -957,13 +957,13 @@ def test_promote_demote_users(self): data = {'student_id': self.student_one.id} response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.assertTrue(self.sample_course.is_faculty(self.student_one)) url = reverse('course-roster-demote') data = {'faculty_id': self.student_one.id} response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.assertFalse(self.sample_course.is_faculty(self.student_one)) def test_remove_user(self): @@ -974,12 +974,12 @@ def test_remove_user(self): url = reverse('course-roster-remove') data = {'user_id': self.student_one.id} response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.assertFalse(self.sample_course.is_member(self.student_one)) data = {'user_id': self.instructor_two.id} response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.assertFalse(self.sample_course.is_faculty(self.instructor_two)) self.assertFalse(self.sample_course.is_member(self.instructor_two)) @@ -993,7 +993,7 @@ def test_uni_invite_get_or_create_user(self): user = view.get_or_create_user('abc123') self.assertFalse(user.has_usable_password()) - self.assertEquals(user, view.get_or_create_user('abc123')) + self.assertEqual(user, view.get_or_create_user('abc123')) def test_uni_invite_post(self): self.client.login(username=self.instructor_one.username, @@ -1002,13 +1002,13 @@ def test_uni_invite_post(self): url = reverse('course-roster-add-uni') response = self.client.post(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) messages = [m.message for m in get_messages(response.wsgi_request)] self.assertIn('Please enter a comma-separated list of UNIs', messages[0]) response = self.client.post(url, {'unis': 'abc123'}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) user = User.objects.get(username='abc123') self.assertTrue(self.sample_course.is_true_member(user)) @@ -1019,7 +1019,7 @@ def test_uni_invite_post(self): response = self.client.post( url, {'unis': ' abc123 ,efg456,az4@columbia.edu,1234 56'}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) user = User.objects.get(username='efg456') self.assertTrue(self.sample_course.is_true_member(user)) @@ -1042,7 +1042,7 @@ def test_uni_invite_post_newlines(self): url = reverse('course-roster-add-uni') # sometimes they enter a newline instead of a comma response = self.client.post(url, {'unis': ' abc123\nefg456,'}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) user = User.objects.get(username='efg456') self.assertTrue(self.sample_course.is_true_member(user)) @@ -1055,7 +1055,7 @@ def test_email_invite_existing_course_member(self): password='test') self.switch_course(self.client, self.sample_course) response = self.client.post(url, {'emails': self.student_one.email}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) messages = [m.message for m in get_messages(response.wsgi_request)] self.assertIn( 'Student One (student_one@example.com) is already a course member', @@ -1071,7 +1071,7 @@ def test_email_invite_existing_user(self): self.switch_course(self.client, self.sample_course) response = self.client.post(url, {'emails': self.alt_student.email}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) messages = [m.message for m in get_messages(response.wsgi_request)] self.assertIn('Student Alternate is now a course member', messages[0]) @@ -1081,8 +1081,8 @@ def test_email_invite_existing_user(self): self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Mediathread: Sample Course') - self.assertEquals(mail.outbox[0].from_email, - 'mediathread@example.com') + self.assertEqual(mail.outbox[0].from_email, + 'mediathread@example.com') self.assertTrue(mail.outbox[0].to, [self.alt_student.email]) self.assertTrue(CourseInvitation.objects.count() == 0) @@ -1094,7 +1094,7 @@ def test_email_invite_new_user(self): self.switch_course(self.client, self.sample_course) response = self.client.post(url, {'emails': 'foo@example.com'}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) messages = [m.message for m in get_messages(response.wsgi_request)] self.assertIn('An email was sent to foo@example.com inviting this ' 'user to join the course.', messages[0]) @@ -1102,8 +1102,8 @@ def test_email_invite_new_user(self): self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Mediathread Course Invitation: Sample Course') - self.assertEquals(mail.outbox[0].from_email, - 'mediathread@example.com') + self.assertEqual(mail.outbox[0].from_email, + 'mediathread@example.com') self.assertTrue(mail.outbox[0].to, ['foo@example.com']) self.assertTrue(CourseInvitation.objects.count() == 1) @@ -1122,7 +1122,7 @@ def test_email_invite_no_user(self): self.switch_course(self.client, self.sample_course) response = self.client.post(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) messages = [m.message for m in get_messages(response.wsgi_request)] self.assertIn('Please enter a comma-separated list of email ' 'addresses.', messages[0]) @@ -1134,7 +1134,7 @@ def test_email_invite_invalid_email(self): self.switch_course(self.client, self.sample_course) response = self.client.post(url, {'emails': '#$%^,foo@example.com'}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) messages = [m.message for m in get_messages(response.wsgi_request)] self.assertIn('#$%^ is not a valid email address.', messages[0]) self.assertIn('An email was sent to foo@example.com inviting ' @@ -1146,7 +1146,7 @@ def test_accept_invite_invalid_uuid(self): 'course-invite-accept', kwargs={'uidb64': uuid.uuid4()}) response = self.client.get(url) - self.assertEquals(response.status_code, 404) + self.assertEqual(response.status_code, 404) # already accepted invitation invite = CourseInvitationFactory( @@ -1154,7 +1154,7 @@ def test_accept_invite_invalid_uuid(self): invited_by=self.instructor_one) url = reverse('course-invite-accept', kwargs={'uidb64': invite.uuid}) response = self.client.get(url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertContains( response, 'This invitation has already been accepted') @@ -1167,7 +1167,7 @@ def test_accept_invite_get_invite(self): invite = CourseInvitationFactory( course=self.sample_course, invited_by=self.instructor_one) - self.assertEquals(view.get_invite(invite.uuid), invite) + self.assertEqual(view.get_invite(invite.uuid), invite) def test_accept_invite_form_valid(self): form = AcceptInvitationForm() @@ -1184,9 +1184,9 @@ def test_accept_invite_form_valid(self): view.form_valid(form) user = User.objects.get(username='testname') - self.assertEquals(user.first_name, 'Foo') - self.assertEquals(user.last_name, 'Bar') - self.assertEquals(user.email, invite.email) + self.assertEqual(user.first_name, 'Foo') + self.assertEqual(user.last_name, 'Bar') + self.assertEqual(user.email, invite.email) invite.refresh_from_db() self.assertTrue(invite.accepted()) @@ -1202,14 +1202,14 @@ def test_resend_invite(self): password='test') self.switch_course(self.client, self.sample_course) response = self.client.post(url, {'invite-id': '3'}) - self.assertEquals(response.status_code, 404) + self.assertEqual(response.status_code, 404) invite = CourseInvitationFactory( course=self.sample_course, invited_by=self.instructor_one) with self.settings(SERVER_EMAIL='mediathread@example.com'): response = self.client.post(url, {'invite-id': invite.id}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) msg = 'A course invitation was resent to {}'.format(invite.email) messages = [m.message for m in get_messages(response.wsgi_request)] @@ -1218,8 +1218,8 @@ def test_resend_invite(self): self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Mediathread Course Invitation: Sample Course') - self.assertEquals(mail.outbox[0].from_email, - 'mediathread@example.com') + self.assertEqual(mail.outbox[0].from_email, + 'mediathread@example.com') self.assertTrue(mail.outbox[0].to, [invite.email]) @@ -1367,7 +1367,7 @@ def test_post(self): course = Course.objects.last() self.assertEqual(course.title, 'English for Cats') self.assertEqual( - smart_text(course.info), + smart_str(course.info), 'English for Cats (Spring 2016) None None-None') self.assertEqual(course.info.term, 1) self.assertEqual(course.info.year, 2016) @@ -1394,10 +1394,10 @@ def test_send_faculty_email(self): self.assertEqual( mail.outbox[0].subject, 'Your Mediathread Course Activation: English for Cats') - self.assertEquals( + self.assertEqual( mail.outbox[0].from_email, settings.SERVER_EMAIL) - self.assertEquals( + self.assertEqual( mail.outbox[0].to, ['test_user@example.com']) @@ -1419,10 +1419,10 @@ def test_send_staff_email(self): self.assertEqual( mail.outbox[0].subject, 'Mediathread Course Activated: English for Cats') - self.assertEquals( + self.assertEqual( mail.outbox[0].from_email, settings.SERVER_EMAIL) - self.assertEquals( + self.assertEqual( mail.outbox[0].to, [settings.CONTACT_US_EMAIL]) self.assertIn( @@ -1645,8 +1645,8 @@ def test_get(self): self.client.login( username=self.instructor_one.username, password='test') response = self.client.get(url, follow=True) - self.assertEquals(response.status_code, 200) - self.assertEquals(response.context['course'], self.sample_course) + self.assertEqual(response.status_code, 200) + self.assertEqual(response.context['course'], self.sample_course) def test_get_without_course(self): ctx = LTICourseContextFactory( @@ -1661,7 +1661,7 @@ def test_get_without_course(self): self.client.login( username=self.instructor_one.username, password='test') response = self.client.get(url, follow=True) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertTrue('course' not in response.context) @@ -1682,15 +1682,15 @@ def test_post_sis_course_id(self): self.assertEqual(response.status_code, 302) c = Course.objects.get(title='LTI Course') - self.assertEquals( + self.assertEqual( c.group.name, 't3.y2017.s010.ct7113.socw.st.course:columbia.edu') - self.assertEquals( + self.assertEqual( c.faculty_group.name, 't3.y2017.s010.ct7113.socw.fc.course:columbia.edu') - self.assertEquals(c.info.term, 3) - self.assertEquals(c.info.year, 2017) + self.assertEqual(c.info.term, 3) + self.assertEqual(c.info.year, 2017) self.assertTrue(user in c.group.user_set.all()) self.assertTrue(user in c.faculty_group.user_set.all()) @@ -1699,17 +1699,17 @@ def test_post_sis_course_id(self): self.assertEqual(mail.outbox[0].subject, 'Mediathread Course Connected') - self.assertEquals(mail.outbox[0].from_email, - settings.SERVER_EMAIL) - self.assertEquals(mail.outbox[0].to, - [settings.CONTACT_US_EMAIL]) + self.assertEqual(mail.outbox[0].from_email, + settings.SERVER_EMAIL) + self.assertEqual(mail.outbox[0].to, + [settings.CONTACT_US_EMAIL]) self.assertEqual(mail.outbox[1].subject, 'Mediathread Course Connected') - self.assertEquals(mail.outbox[1].from_email, - settings.SERVER_EMAIL) - self.assertEquals(mail.outbox[1].to, - [user.email]) + self.assertEqual(mail.outbox[1].from_email, + settings.SERVER_EMAIL) + self.assertEqual(mail.outbox[1].to, + [user.email]) LTICourseContext.objects.get( lms_course_context='1234', @@ -1742,10 +1742,10 @@ def test_post_course_context(self): self.assertEqual(response.status_code, 302) c = Course.objects.get(title='LTI Course') - self.assertEquals(c.group.name, '1234') - self.assertEquals(c.faculty_group.name, '1234_faculty') - self.assertEquals(c.info.term, 1) - self.assertEquals(c.info.year, 2017) + self.assertEqual(c.group.name, '1234') + self.assertEqual(c.faculty_group.name, '1234_faculty') + self.assertEqual(c.info.term, 1) + self.assertEqual(c.info.year, 2017) self.assertTrue(user in c.group.user_set.all()) self.assertTrue(user in c.faculty_group.user_set.all()) @@ -1782,10 +1782,10 @@ def test_post_course_context_with_unicode(self): c = Course.objects.get( title='LTI Course "Película", rødgrød med fløde') - self.assertEquals(c.group.name, '1234') - self.assertEquals(c.faculty_group.name, '1234_faculty') - self.assertEquals(c.info.term, 1) - self.assertEquals(c.info.year, 2017) + self.assertEqual(c.group.name, '1234') + self.assertEqual(c.faculty_group.name, '1234_faculty') + self.assertEqual(c.info.term, 1) + self.assertEqual(c.info.year, 2017) self.assertTrue(user in c.group.user_set.all()) self.assertTrue(user in c.faculty_group.user_set.all()) @@ -1878,14 +1878,14 @@ def test_get_context_data(self): with self.settings(ASSET_CONVERT_API=None): ctx = view.get_context_data() self.assertFalse(ctx['endpoint']) - self.assertEquals(ctx['assets'].count(), 4) + self.assertEqual(ctx['assets'].count(), 4) def test_get_conversion_endpoint(self): view = CourseConvertMaterialsView() with self.settings(SERVER_ADMIN_SECRETKEYS={}): - self.assertEquals(view.get_conversion_endpoint(), (None, None)) + self.assertEqual(view.get_conversion_endpoint(), (None, None)) rv = ('http://something', 'foo') with self.settings(ASSET_CONVERT_API=rv[0], SERVER_ADMIN_SECRETKEYS={rv[0]: rv[1]}): - self.assertEquals(view.get_conversion_endpoint(), rv) + self.assertEqual(view.get_conversion_endpoint(), rv) diff --git a/mediathread/main/views.py b/mediathread/main/views.py index d71ac179fc..83ef67aba0 100644 --- a/mediathread/main/views.py +++ b/mediathread/main/views.py @@ -20,7 +20,7 @@ from django.template import loader from django.urls import reverse from django.utils.decorators import method_decorator -from django.utils.encoding import smart_bytes, smart_text +from django.utils.encoding import smart_bytes, smart_str from django.utils.http import urlencode from django.utils.safestring import mark_safe from django.utils import timezone @@ -401,7 +401,7 @@ def form_valid(self, form): subject = 'Mediathread Contact Us Request' form_data = form.cleaned_data tmpl = loader.get_template('main/contact_description.txt') - form_data['description'] = smart_text(tmpl.render(form_data)) + form_data['description'] = smart_str(tmpl.render(form_data)) # send to server email instead send_mail('Mediathread Support Request', form_data['description'], diff --git a/mediathread/mixins.py b/mediathread/mixins.py index 19f4c34f68..b04ddd6d0a 100644 --- a/mediathread/mixins.py +++ b/mediathread/mixins.py @@ -15,7 +15,7 @@ from mediathread.main.course_details import cached_course_is_faculty, \ all_selections_are_visible, all_items_are_visible, cached_course_is_member from mediathread.projects.models import Project, ProjectNote -from mediathread.util import attach_course_to_request +from mediathread.util import attach_course_to_request, is_ajax def ajax_required(func): @@ -29,7 +29,7 @@ def my_view(request): """ def wrap(request, *args, **kwargs): - if not request.is_ajax(): + if not is_ajax(request): return HttpResponseNotAllowed("") return func(request, *args, **kwargs) diff --git a/mediathread/projects/api.py b/mediathread/projects/api.py index 05613c4b1d..0901ca4b9d 100644 --- a/mediathread/projects/api.py +++ b/mediathread/projects/api.py @@ -6,7 +6,7 @@ from courseaffils.lib import get_public_name from django.urls import reverse -from django.utils.encoding import smart_text +from django.utils.encoding import smart_str from tastypie import fields from tastypie.resources import ModelResource @@ -193,9 +193,9 @@ def render_one(self, request, project, version_number=None): if self.editable: projectform = ProjectForm(request, instance=project) data['form'] = { - 'participants': smart_text(projectform['participants']), - 'publish': smart_text(projectform['publish']), - 'response_view_policy': smart_text( + 'participants': smart_str(projectform['participants']), + 'publish': smart_str(projectform['publish']), + 'response_view_policy': smart_str( projectform['response_view_policy']), } diff --git a/mediathread/projects/tests/test_api.py b/mediathread/projects/tests/test_api.py index 5bccb87084..291c7adace 100644 --- a/mediathread/projects/tests/test_api.py +++ b/mediathread/projects/tests/test_api.py @@ -14,13 +14,13 @@ def get_credentials(self): return None def assertProjectEquals(self, project, title, author, selection_ids=None): - self.assertEquals(project['title'], title) - self.assertEquals(project['attribution'], author) + self.assertEqual(project['title'], title) + self.assertEqual(project['attribution'], author) def assertSelectionsEqual(self, selections, selection_ids): - self.assertEquals(len(selections), len(selection_ids)) + self.assertEqual(len(selections), len(selection_ids)) for idx, selection in enumerate(selections): - self.assertEquals(int(selection['id']), selection_ids[idx]) + self.assertEqual(int(selection['id']), selection_ids[idx]) def setUp(self): self.setup_sample_course() @@ -95,7 +95,7 @@ def test_student_one_getlist(self): the_json = json.loads(response.content) projects = the_json['projects'] - self.assertEquals(len(projects), 4) + self.assertEqual(len(projects), 4) self.assertProjectEquals(projects[0], self.assignment.title, 'Instructor One') @@ -117,11 +117,11 @@ def test_student_two_getlist(self): response = self.client.get('/api/project/', {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) projects = the_json['projects'] - self.assertEquals(len(projects), 2) + self.assertEqual(len(projects), 2) self.assertProjectEquals(projects[0], self.assignment.title, 'Instructor One') @@ -137,11 +137,11 @@ def test_student_two_getlist_filtered(self): url = '/api/project/user/%s/' % self.student_two.username response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) projects = the_json['projects'] - self.assertEquals(len(projects), 0) + self.assertEqual(len(projects), 0) def test_instructor_getlist(self): self.assertTrue( @@ -151,11 +151,11 @@ def test_instructor_getlist(self): response = self.client.get('/api/project/', {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) projects = the_json['projects'] - self.assertEquals(len(projects), 3) + self.assertEqual(len(projects), 3) self.assertProjectEquals(projects[0], self.assignment.title, 'Instructor One') @@ -175,7 +175,7 @@ def test_student_one_getobject(self): url = '/api/project/%s/' % self.project_private.id response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) @@ -216,7 +216,7 @@ def test_student_two_getobject(self): url = '/api/project/%s/' % self.project_class_shared.id response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) self.assertProjectEquals(the_json['project'], self.project_class_shared.title, @@ -246,12 +246,12 @@ def test_instructor_getobject(self): url = '/api/project/%s/' % self.project_instructor_shared.id response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) self.assertProjectEquals(the_json['project'], self.project_instructor_shared.title, 'Student One') - self.assertEquals(len(the_json['annotations']), 2) + self.assertEqual(len(the_json['annotations']), 2) self.assertSelectionsEqual(the_json['annotations'], [self.student_note.id, self.student_ga.id]) @@ -259,7 +259,7 @@ def test_instructor_getobject(self): url = '/api/project/%s/' % self.project_class_shared.id response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) self.assertProjectEquals(the_json['project'], self.project_class_shared.title, @@ -280,7 +280,7 @@ def test_post_list(self): response = self.client.post('/api/project/', {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) def test_put_detail(self): self.assertTrue( @@ -291,7 +291,7 @@ def test_put_detail(self): response = self.client.put(url, data={}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) def test_delete(self): self.assertTrue( @@ -300,4 +300,4 @@ def test_delete(self): url = '/api/project/%s/' % self.project_class_shared.id response = self.client.delete(url, data={}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) diff --git a/mediathread/projects/tests/test_forms.py b/mediathread/projects/tests/test_forms.py index bbf653e3de..c867be5439 100644 --- a/mediathread/projects/tests/test_forms.py +++ b/mediathread/projects/tests/test_forms.py @@ -23,37 +23,37 @@ def test_publish_options(self): self.request.user = self.instructor_one frm = ProjectForm(self.request, instance=None, data={}) lst = frm.fields['publish'].choices - self.assertEquals(len(lst), 2) - self.assertEquals(lst[0][0], PUBLISH_DRAFT[0]) - self.assertEquals(lst[1][0], PUBLISH_WHOLE_CLASS[0]) + self.assertEqual(len(lst), 2) + self.assertEqual(lst[0][0], PUBLISH_DRAFT[0]) + self.assertEqual(lst[1][0], PUBLISH_WHOLE_CLASS[0]) # student self.request.user = self.student_one frm = ProjectForm(self.request, instance=None, data={}) lst = frm.fields['publish'].choices - self.assertEquals(len(lst), 3) - self.assertEquals(lst[0][0], PUBLISH_DRAFT[0]) - self.assertEquals(lst[1][0], 'InstructorShared') - self.assertEquals(lst[2][0], PUBLISH_WHOLE_CLASS[0]) + self.assertEqual(len(lst), 3) + self.assertEqual(lst[0][0], PUBLISH_DRAFT[0]) + self.assertEqual(lst[1][0], 'InstructorShared') + self.assertEqual(lst[2][0], PUBLISH_WHOLE_CLASS[0]) # maybe public option self.sample_course.add_detail(ALLOW_PUBLIC_COMPOSITIONS_KEY, 1) frm = ProjectForm(self.request, instance=None, data={}) lst = frm.fields['publish'].choices - self.assertEquals(len(lst), 3) - self.assertEquals(lst[0][0], PUBLISH_DRAFT[0]) - self.assertEquals(lst[1][0], 'InstructorShared') - self.assertEquals(lst[2][0], PUBLISH_WHOLE_CLASS[0]) + self.assertEqual(len(lst), 3) + self.assertEqual(lst[0][0], PUBLISH_DRAFT[0]) + self.assertEqual(lst[1][0], 'InstructorShared') + self.assertEqual(lst[2][0], PUBLISH_WHOLE_CLASS[0]) def test_project_form(self): frm = ProjectForm(self.request, instance=None, data={}) lst = frm.fields['participants'].choices - self.assertEquals(lst[0][1], 'Instructor One') - self.assertEquals(lst[1][1], 'Instructor Two') - self.assertEquals(lst[2][1], 'Student One') - self.assertEquals(lst[3][1], 'Student Three') - self.assertEquals(lst[4][1], 'Student Two') + self.assertEqual(lst[0][1], 'Instructor One') + self.assertEqual(lst[1][1], 'Instructor Two') + self.assertEqual(lst[2][1], 'Student One') + self.assertEqual(lst[3][1], 'Student Three') + self.assertEqual(lst[4][1], 'Student Two') self.assertFalse(frm.fields['participants'].required) self.assertFalse(frm.fields['body'].required) @@ -69,13 +69,13 @@ def test_bound_composition_form(self): data = {} frm = ProjectForm(self.request, instance=project, data=data) - self.assertEquals(frm.initial['publish'], PUBLISH_DRAFT[0]) + self.assertEqual(frm.initial['publish'], PUBLISH_DRAFT[0]) lst = frm.fields['publish'].choices - self.assertEquals(len(lst), 3) - self.assertEquals(lst[0][0], PUBLISH_DRAFT[0]) - self.assertEquals(lst[1][0], PUBLISH_WHOLE_CLASS[0]) - self.assertEquals(lst[2][0], 'PublicEditorsAreOwners') + self.assertEqual(len(lst), 3) + self.assertEqual(lst[0][0], PUBLISH_DRAFT[0]) + self.assertEqual(lst[1][0], PUBLISH_WHOLE_CLASS[0]) + self.assertEqual(lst[2][0], 'PublicEditorsAreOwners') def test_bound_assignment_form(self): self.sample_course.add_detail(ALLOW_PUBLIC_COMPOSITIONS_KEY, 1) @@ -86,12 +86,12 @@ def test_bound_assignment_form(self): data = {} frm = ProjectForm(self.request, instance=assignment, data=data) - self.assertEquals(frm.initial['publish'], PUBLISH_DRAFT[0]) + self.assertEqual(frm.initial['publish'], PUBLISH_DRAFT[0]) lst = frm.fields['publish'].choices - self.assertEquals(len(lst), 2) - self.assertEquals(lst[0][0], PUBLISH_DRAFT[0]) - self.assertEquals(lst[1][0], PUBLISH_WHOLE_CLASS[0]) + self.assertEqual(len(lst), 2) + self.assertEqual(lst[0][0], PUBLISH_DRAFT[0]) + self.assertEqual(lst[1][0], PUBLISH_WHOLE_CLASS[0]) def test_bound_assignment_form_with_responses(self): self.sample_course.add_detail(ALLOW_PUBLIC_COMPOSITIONS_KEY, 1) @@ -106,25 +106,25 @@ def test_bound_assignment_form_with_responses(self): data = {} frm = ProjectForm(self.request, instance=assignment, data=data) - self.assertEquals(frm.initial['publish'], PUBLISH_WHOLE_CLASS[0]) + self.assertEqual(frm.initial['publish'], PUBLISH_WHOLE_CLASS[0]) lst = frm.fields['publish'].choices - self.assertEquals(len(lst), 1) - self.assertEquals(lst[0][0], PUBLISH_WHOLE_CLASS[0]) + self.assertEqual(len(lst), 1) + self.assertEqual(lst[0][0], PUBLISH_WHOLE_CLASS[0]) def test_response_policy_options(self): frm = ProjectForm(self.request, instance=None, data={}) lst = frm.fields['response_view_policy'].choices - self.assertEquals(len(lst), 3) - self.assertEquals(lst[0], RESPONSE_VIEW_NEVER) - self.assertEquals(lst[1], RESPONSE_VIEW_SUBMITTED) - self.assertEquals(lst[2], RESPONSE_VIEW_ALWAYS) + self.assertEqual(len(lst), 3) + self.assertEqual(lst[0], RESPONSE_VIEW_NEVER) + self.assertEqual(lst[1], RESPONSE_VIEW_SUBMITTED) + self.assertEqual(lst[2], RESPONSE_VIEW_ALWAYS) self.sample_course.add_detail(SELECTION_VISIBILITY_KEY, 0) frm = ProjectForm(self.request, instance=None, data={}) lst = frm.fields['response_view_policy'].choices - self.assertEquals(len(lst), 1) - self.assertEquals(lst[0], RESPONSE_VIEW_NEVER) + self.assertEqual(len(lst), 1) + self.assertEqual(lst[0], RESPONSE_VIEW_NEVER) def test_bound_assignment_response_policy_options(self): self.sample_course.add_detail(SELECTION_VISIBILITY_KEY, 0) @@ -135,8 +135,8 @@ def test_bound_assignment_response_policy_options(self): frm = ProjectForm(self.request, instance=selection_assignment, data={}) lst = frm.fields['response_view_policy'].choices - self.assertEquals(len(lst), 1) - self.assertEquals(lst[0], RESPONSE_VIEW_NEVER) + self.assertEqual(len(lst), 1) + self.assertEqual(lst[0], RESPONSE_VIEW_NEVER) assignment = ProjectFactory.create( course=self.sample_course, author=self.instructor_one, @@ -145,5 +145,5 @@ def test_bound_assignment_response_policy_options(self): frm = ProjectForm(self.request, instance=assignment, data={}) lst = frm.fields['response_view_policy'].choices - self.assertEquals(len(lst), 1) - self.assertEquals(lst[0], RESPONSE_VIEW_NEVER) + self.assertEqual(len(lst), 1) + self.assertEqual(lst[0], RESPONSE_VIEW_NEVER) diff --git a/mediathread/projects/tests/test_homepage.py b/mediathread/projects/tests/test_homepage.py index 6f6ea902cc..7bd1756086 100644 --- a/mediathread/projects/tests/test_homepage.py +++ b/mediathread/projects/tests/test_homepage.py @@ -75,9 +75,9 @@ def setUp(self): policy='PrivateEditorsAreOwners') def assertProjectEquals(self, project, title, author, editable): - self.assertEquals(project['title'], title) - self.assertEquals(project['participants'][0]['public_name'], author) - self.assertEquals(project['editable'], editable) + self.assertEqual(project['title'], title) + self.assertEqual(project['participants'][0]['public_name'], author) + self.assertEqual(project['editable'], editable) def test_get_my_projectlist_as_student(self): self.assertTrue(self.client.login(username=self.student_one.username, @@ -90,13 +90,13 @@ def test_get_my_projectlist_as_student(self): the_json = json.loads(response.content) assignments = the_json['assignments'] - self.assertEquals(len(assignments), 1) - self.assertEquals(assignments[0]['title'], self.assignment.title) + self.assertEqual(len(assignments), 1) + self.assertEqual(assignments[0]['title'], self.assignment.title) self.assertTrue(assignments[0]['display_as_assignment']) self.assertFalse(assignments[0]['is_faculty']) projects = the_json['projects'] - self.assertEquals(len(projects), 3) + self.assertEqual(len(projects), 3) self.assertProjectEquals(projects[0], self.project_class_shared.title, 'Student One', True) @@ -120,10 +120,10 @@ def test_get_my_instructor_projectlist(self): the_json = json.loads(response.content) assignments = the_json['assignments'] - self.assertEquals(len(assignments), 0) + self.assertEqual(len(assignments), 0) projects = the_json['projects'] - self.assertEquals(len(projects), 1) + self.assertEqual(len(projects), 1) self.assertProjectEquals(projects[0], self.assignment.title, 'Instructor One', False) @@ -137,10 +137,10 @@ def test_get_my_peer_projectlist(self): the_json = json.loads(response.content) assignments = the_json['assignments'] - self.assertEquals(len(assignments), 0) + self.assertEqual(len(assignments), 0) projects = the_json['projects'] - self.assertEquals(len(projects), 1) + self.assertEqual(len(projects), 1) self.assertProjectEquals(projects[0], self.project_class_shared.title, 'Student One', False) @@ -158,10 +158,10 @@ def test_get_my_projectlist_as_instructor(self): the_json = json.loads(response.content) assignments = the_json['assignments'] - self.assertEquals(len(assignments), 0) + self.assertEqual(len(assignments), 0) projects = the_json['projects'] - self.assertEquals(len(projects), 1) + self.assertEqual(len(projects), 1) self.assertProjectEquals(projects[0], self.assignment.title, 'Instructor One', True) @@ -177,10 +177,10 @@ def test_instructor_projectlist_as_instructor_two(self): the_json = json.loads(response.content) - self.assertEquals(len(the_json['assignments']), 0) + self.assertEqual(len(the_json['assignments']), 0) # The assignment is viewable here. - self.assertEquals(len(the_json['projects']), 1) + self.assertEqual(len(the_json['projects']), 1) self.assertProjectEquals(the_json['projects'][0], self.assignment.title, 'Instructor One', False) @@ -196,10 +196,10 @@ def test_get_student_projectlist_as_instructor(self): HTTP_X_REQUESTED_WITH='XMLHttpRequest') the_json = json.loads(response.content) - self.assertEquals(len(the_json['assignments']), 0) + self.assertEqual(len(the_json['assignments']), 0) projects = the_json['projects'] - self.assertEquals(len(projects), 2) + self.assertEqual(len(projects), 2) self.assertProjectEquals(projects[0], self.project_class_shared.title, 'Student One', False) @@ -214,14 +214,14 @@ def test_request_nonclassmember_projectlist(self): url = '/api/project/user/%s/' % self.alt_student.username response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) self.assertFalse('compositions' in the_json) url = '/api/project/user/%s/' % self.alt_instructor.username response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertFalse('compositions' in the_json) def test_request_superuser_nonclassmember_projectlist(self): @@ -232,7 +232,7 @@ def test_request_superuser_nonclassmember_projectlist(self): url = '/api/project/user/%s/' % su.username response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) self.assertFalse('compositions' in the_json) @@ -245,10 +245,10 @@ def test_get_all_projects_as_student(self): HTTP_X_REQUESTED_WITH='XMLHttpRequest') the_json = json.loads(response.content) - self.assertEquals(the_json['assignments'], []) + self.assertEqual(the_json['assignments'], []) projects = the_json['projects'] - self.assertEquals(len(projects), 4) + self.assertEqual(len(projects), 4) self.assertProjectEquals(projects[0], self.assignment.title, 'Instructor One', False) @@ -272,10 +272,10 @@ def test_get_all_projects_as_peer(self): HTTP_X_REQUESTED_WITH='XMLHttpRequest') the_json = json.loads(response.content) - self.assertEquals(the_json['assignments'], []) + self.assertEqual(the_json['assignments'], []) projects = the_json['projects'] - self.assertEquals(len(projects), 2) + self.assertEqual(len(projects), 2) self.assertProjectEquals(projects[0], self.assignment.title, 'Instructor One', False) @@ -292,7 +292,7 @@ def test_get_all_projects_as_instructor(self): HTTP_X_REQUESTED_WITH='XMLHttpRequest') the_json = json.loads(response.content) - self.assertEquals(the_json['assignments'], []) + self.assertEqual(the_json['assignments'], []) projects = the_json['projects'] self.assertProjectEquals(projects[0], self.assignment.title, diff --git a/mediathread/projects/tests/test_models.py b/mediathread/projects/tests/test_models.py index 4d3c406110..abcc925ac7 100644 --- a/mediathread/projects/tests/test_models.py +++ b/mediathread/projects/tests/test_models.py @@ -147,62 +147,62 @@ def test_can_cite(self): def test_description(self): project = Project.objects.get(id=self.project_private.id) - self.assertEquals(project.description(), 'Composition') - self.assertEquals(project.visibility_short(), 'Draft') + self.assertEqual(project.description(), 'Composition') + self.assertEqual(project.visibility_short(), 'Draft') project = Project.objects.get(id=self.project_class_shared.id) - self.assertEquals(project.description(), 'Composition') - self.assertEquals(project.visibility_short(), 'Shared with Class') + self.assertEqual(project.description(), 'Composition') + self.assertEqual(project.visibility_short(), 'Shared with Class') project = Project.objects.get(id=self.project_instructor_shared.id) - self.assertEquals(project.description(), 'Composition') - self.assertEquals(project.visibility_short(), - 'Shared with Instructor') + self.assertEqual(project.description(), 'Composition') + self.assertEqual(project.visibility_short(), + 'Shared with Instructor') assignment = Project.objects.get(id=self.assignment.id) - self.assertEquals(assignment.description(), 'Composition Assignment') - self.assertEquals(assignment.visibility_short(), 'Shared with Class') + self.assertEqual(assignment.description(), 'Composition Assignment') + self.assertEqual(assignment.visibility_short(), 'Shared with Class') sassignment = Project.objects.get(id=self.selection_assignment.id) - self.assertEquals(sassignment.description(), 'Selection Assignment') + self.assertEqual(sassignment.description(), 'Selection Assignment') r = ProjectFactory.create( course=self.sample_course, author=self.student_one, parent=self.selection_assignment) - self.assertEquals(r.description(), 'Selection Assignment Response') + self.assertEqual(r.description(), 'Selection Assignment Response') r = ProjectFactory.create( course=self.sample_course, author=self.student_one, parent=self.assignment) - self.assertEquals(r.description(), 'Composition Assignment Response') + self.assertEqual(r.description(), 'Composition Assignment Response') r = ProjectFactory.create( course=self.sample_course, author=self.student_one, parent=self.sequence_assignment) - self.assertEquals(r.description(), 'Sequence Assignment Response') + self.assertEqual(r.description(), 'Sequence Assignment Response') def test_migrate_one(self): new_project = Project.objects.migrate_one(self.project_private, self.alt_course, self.alt_instructor) - self.assertEquals(new_project.title, self.project_private.title) - self.assertEquals(new_project.author, self.alt_instructor) - self.assertEquals(new_project.course, self.alt_course) - self.assertEquals(new_project.visibility_short(), "Draft") + self.assertEqual(new_project.title, self.project_private.title) + self.assertEqual(new_project.author, self.alt_instructor) + self.assertEqual(new_project.course, self.alt_course) + self.assertEqual(new_project.visibility_short(), "Draft") new_project = Project.objects.migrate_one(self.assignment, self.alt_course, self.alt_instructor) - self.assertEquals(new_project.title, self.assignment.title) - self.assertEquals(new_project.summary, self.assignment.summary) - self.assertEquals(new_project.body, self.assignment.body) - self.assertEquals(new_project.author, self.alt_instructor) - self.assertEquals(new_project.course, self.alt_course) - self.assertEquals(new_project.description(), 'Composition Assignment') - self.assertEquals(new_project.visibility_short(), 'Shared with Class') - self.assertEquals(AssignmentItem.objects.count(), 0) + self.assertEqual(new_project.title, self.assignment.title) + self.assertEqual(new_project.summary, self.assignment.summary) + self.assertEqual(new_project.body, self.assignment.body) + self.assertEqual(new_project.author, self.alt_instructor) + self.assertEqual(new_project.course, self.alt_course) + self.assertEqual(new_project.description(), 'Composition Assignment') + self.assertEqual(new_project.visibility_short(), 'Shared with Class') + self.assertEqual(AssignmentItem.objects.count(), 0) def test_migrate_one_discussion_assignment(self): self.assertIsNotNone(self.discussion_assignment.get_collaboration()) @@ -264,25 +264,25 @@ def test_migrate_selection_assignment(self): projects, self.alt_course, self.alt_instructor, object_map, True, True) - self.assertEquals(self.alt_course.asset_set.count(), 1) + self.assertEqual(self.alt_course.asset_set.count(), 1) alt_asset = self.alt_course.asset_set.first() self.assertTrue(alt_asset.title, 'Sample') self.assertNotEqual(alt_asset.id, asset.id) - self.assertEquals(self.alt_course.project_set.count(), 2) + self.assertEqual(self.alt_course.project_set.count(), 2) a = Project.objects.get(course=self.alt_course, title='Assignment 1') - self.assertEquals(a.response_view_policy, RESPONSE_VIEW_NEVER[0]) + self.assertEqual(a.response_view_policy, RESPONSE_VIEW_NEVER[0]) ai = AssignmentItem.objects.get(project=a) - self.assertEquals(ai.asset, alt_asset) + self.assertEqual(ai.asset, alt_asset) a = Project.objects.get(course=self.alt_course, title='Assignment 2') ai = AssignmentItem.objects.get(project=a) - self.assertEquals(ai.asset, alt_asset) + self.assertEqual(ai.asset, alt_asset) def test_migrate_projects_to_alt_course(self): - self.assertEquals(len(self.alt_course.asset_set.all()), 0) - self.assertEquals(len(self.alt_course.project_set.all()), 0) + self.assertEqual(len(self.alt_course.asset_set.all()), 0) + self.assertEqual(len(self.alt_course.project_set.all()), 0) projects = Project.objects.filter(id=self.assignment.id) @@ -293,47 +293,47 @@ def test_migrate_projects_to_alt_course(self): True, True) assets = self.alt_course.asset_set - self.assertEquals(assets.count(), 1) + self.assertEqual(assets.count(), 1) asset = assets.all()[0] - self.assertEquals(asset.title, self.asset1.title) + self.assertEqual(asset.title, self.asset1.title) - self.assertEquals(asset.sherdnote_set.count(), 3) + self.assertEqual(asset.sherdnote_set.count(), 3) ga = asset.global_annotation(self.alt_instructor, auto_create=False) self.assertIsNotNone(asset.global_annotation(self.alt_instructor, auto_create=False)) - self.assertEquals(ga.tags, - ',student_one_item,image, instructor_one_item,') - self.assertEquals(ga.body, - 'student one item noteinstructor one item note') + self.assertEqual(ga.tags, + ',student_one_item,image, instructor_one_item,') + self.assertEqual(ga.body, + 'student one item noteinstructor one item note') asset.sherdnote_set.get(title=self.student_note.title) asset.sherdnote_set.get(title=self.instructor_note.title) - self.assertEquals(self.alt_course.project_set.count(), 1) + self.assertEqual(self.alt_course.project_set.count(), 1) project = self.alt_course.project_set.all()[0] - self.assertEquals(project.title, self.assignment.title) - self.assertEquals(project.description(), 'Composition Assignment') - self.assertEquals(project.visibility_short(), 'Shared with Class') - self.assertEquals(project.author, self.alt_instructor) + self.assertEqual(project.title, self.assignment.title) + self.assertEqual(project.description(), 'Composition Assignment') + self.assertEqual(project.visibility_short(), 'Shared with Class') + self.assertEqual(project.author, self.alt_instructor) citations = SherdNote.objects.references_in_string(project.body, self.alt_instructor) - self.assertEquals(len(citations), 4) + self.assertEqual(len(citations), 4) - self.assertEquals(citations[0].title, self.student_note.title) - self.assertEquals(citations[0].author, self.alt_instructor) + self.assertEqual(citations[0].title, self.student_note.title) + self.assertEqual(citations[0].author, self.alt_instructor) - self.assertEquals(citations[1].title, self.instructor_note.title) - self.assertEquals(citations[1].author, self.alt_instructor) + self.assertEqual(citations[1].title, self.instructor_note.title) + self.assertEqual(citations[1].author, self.alt_instructor) - self.assertEquals(citations[2].id, ga.id) - self.assertEquals(citations[3].id, ga.id) + self.assertEqual(citations[2].id, ga.id) + self.assertEqual(citations[3].id, ga.id) def test_visible_by_course(self): visible_projects = Project.objects.visible_by_course( self.sample_course, self.student_one) - self.assertEquals(len(visible_projects), 7) + self.assertEqual(len(visible_projects), 7) self.assertTrue(self.assignment in visible_projects) self.assertTrue(self.selection_assignment in visible_projects) self.assertTrue(self.sequence_assignment in visible_projects) @@ -344,7 +344,7 @@ def test_visible_by_course(self): visible_projects = Project.objects.visible_by_course( self.sample_course, self.student_two) - self.assertEquals(len(visible_projects), 5) + self.assertEqual(len(visible_projects), 5) self.assertTrue(self.assignment in visible_projects) self.assertTrue(self.selection_assignment in visible_projects) self.assertTrue(self.sequence_assignment in visible_projects) @@ -352,7 +352,7 @@ def test_visible_by_course(self): visible_projects = Project.objects.visible_by_course( self.sample_course, self.instructor_one) - self.assertEquals(len(visible_projects), 7) + self.assertEqual(len(visible_projects), 7) self.assertTrue(self.assignment in visible_projects) self.assertTrue(self.draft_assignment in visible_projects) self.assertTrue(self.project_class_shared in visible_projects) @@ -363,49 +363,49 @@ def test_visible_by_course(self): def test_visible_by_course_and_user(self): visible_projects = Project.objects.visible_by_course_and_user( self.sample_course, self.student_one, self.student_one, False) - self.assertEquals(len(visible_projects), 3) - self.assertEquals(visible_projects[0], self.project_class_shared) - self.assertEquals(visible_projects[1], self.project_instructor_shared) - self.assertEquals(visible_projects[2], self.project_private) + self.assertEqual(len(visible_projects), 3) + self.assertEqual(visible_projects[0], self.project_class_shared) + self.assertEqual(visible_projects[1], self.project_instructor_shared) + self.assertEqual(visible_projects[2], self.project_private) visible_projects = Project.objects.visible_by_course_and_user( self.sample_course, self.student_one, self.instructor_one, True) - self.assertEquals(len(visible_projects), 4) + self.assertEqual(len(visible_projects), 4) self.assertTrue(self.assignment in visible_projects) self.assertTrue(self.selection_assignment in visible_projects) self.assertTrue(self.sequence_assignment in visible_projects) visible_projects = Project.objects.visible_by_course_and_user( self.sample_course, self.student_two, self.student_one, False) - self.assertEquals(len(visible_projects), 1) - self.assertEquals(visible_projects[0], self.project_class_shared) + self.assertEqual(len(visible_projects), 1) + self.assertEqual(visible_projects[0], self.project_class_shared) visible_projects = Project.objects.visible_by_course_and_user( self.sample_course, self.instructor_one, self.student_one, False) - self.assertEquals(len(visible_projects), 2) - self.assertEquals(visible_projects[0], self.project_class_shared) - self.assertEquals(visible_projects[1], self.project_instructor_shared) + self.assertEqual(len(visible_projects), 2) + self.assertEqual(visible_projects[0], self.project_class_shared) + self.assertEqual(visible_projects[1], self.project_instructor_shared) def test_projects_visible_by_course_and_owner(self): visible = Project.objects.projects_visible_by_course_and_owner( self.sample_course, self.student_one, self.student_one) - self.assertEquals(len(visible), 3) + self.assertEqual(len(visible), 3) self.assertTrue(self.project_class_shared in visible) self.assertTrue(self.project_instructor_shared in visible) self.assertTrue(self.project_private in visible) visible = Project.objects.projects_visible_by_course_and_owner( self.sample_course, self.student_one, self.instructor_one) - self.assertEquals(len(visible), 0) + self.assertEqual(len(visible), 0) visible = Project.objects.projects_visible_by_course_and_owner( self.sample_course, self.student_two, self.student_one) - self.assertEquals(len(visible), 1) - self.assertEquals(visible[0], self.project_class_shared) + self.assertEqual(len(visible), 1) + self.assertEqual(visible[0], self.project_class_shared) visible = Project.objects.projects_visible_by_course_and_owner( self.sample_course, self.instructor_one, self.student_one) - self.assertEquals(len(visible), 2) + self.assertEqual(len(visible), 2) self.assertTrue(self.project_class_shared in visible) self.assertTrue(self.project_instructor_shared in visible) @@ -506,7 +506,7 @@ def test_many_responses_by_course(self): def test_faculty_compositions(self): compositions = Project.objects.faculty_compositions( self.sample_course, self.student_one) - self.assertEquals(len(compositions), 0) + self.assertEqual(len(compositions), 0) # instructor composition beta = ProjectFactory.create( @@ -521,10 +521,10 @@ def test_faculty_compositions(self): compositions = Project.objects.faculty_compositions( self.sample_course, self.student_one) - self.assertEquals(len(compositions), 3) - self.assertEquals(compositions[0], alpha) - self.assertEquals(compositions[1], beta) - self.assertEquals(compositions[2], gamma) + self.assertEqual(len(compositions), 3) + self.assertEqual(compositions[0], alpha) + self.assertEqual(compositions[1], beta) + self.assertEqual(compositions[2], gamma) def test_responses(self): response1 = ProjectFactory.create( @@ -535,15 +535,15 @@ def test_responses(self): policy=PUBLISH_INSTRUCTOR_SHARED[0], parent=self.assignment) r = self.assignment.responses(self.sample_course, self.instructor_one) - self.assertEquals(len(r), 2) + self.assertEqual(len(r), 2) r = self.assignment.responses(self.sample_course, self.instructor_one, self.student_one) - self.assertEquals(r[0], response1) + self.assertEqual(r[0], response1) r = self.assignment.responses(self.sample_course, self.instructor_one, self.student_two) - self.assertEquals(r[0], response2) + self.assertEqual(r[0], response2) def test_responses_for_bad_assignment_state(self): ProjectFactory.create( @@ -552,13 +552,13 @@ def test_responses_for_bad_assignment_state(self): self.assignment.get_collaboration().delete() r = self.assignment.responses(self.sample_course, self.instructor_one) - self.assertEquals(len(r), 0) + self.assertEqual(len(r), 0) def test_reset_publish_to_world(self): public = ProjectFactory.create( course=self.sample_course, author=self.student_one, policy=PUBLISH_WHOLE_WORLD[0]) - self.assertEquals( + self.assertEqual( public.public_url(), '/s/%s/project/%s/' % (self.sample_course.slug(), public.id)) @@ -566,31 +566,31 @@ def test_reset_publish_to_world(self): self.assertIsNone(public.public_url()) def test_limit_response_policy(self): - self.assertEquals(self.assignment.response_view_policy, - RESPONSE_VIEW_ALWAYS[0]) - self.assertEquals(self.selection_assignment.response_view_policy, - RESPONSE_VIEW_ALWAYS[0]) + self.assertEqual(self.assignment.response_view_policy, + RESPONSE_VIEW_ALWAYS[0]) + self.assertEqual(self.selection_assignment.response_view_policy, + RESPONSE_VIEW_ALWAYS[0]) Project.objects.limit_response_policy(self.sample_course) assignment = Project.objects.get(id=self.assignment.id) - self.assertEquals(assignment.response_view_policy, - RESPONSE_VIEW_NEVER[0]) + self.assertEqual(assignment.response_view_policy, + RESPONSE_VIEW_NEVER[0]) assignment = Project.objects.get(id=self.selection_assignment.id) - self.assertEquals(assignment.response_view_policy, - RESPONSE_VIEW_NEVER[0]) + self.assertEqual(assignment.response_view_policy, + RESPONSE_VIEW_NEVER[0]) def test_collaboration_sync_model(self): project = ProjectFactory.create( course=self.sample_course, author=self.student_one) collaboration = project.get_collaboration() - self.assertEquals(collaboration.policy_record.policy_name, - PUBLISH_DRAFT[0]) + self.assertEqual(collaboration.policy_record.policy_name, + PUBLISH_DRAFT[0]) project.collaboration_sync_group(collaboration) self.assertIsNotNone(collaboration.group) users = collaboration.group.user_set.all() - self.assertEquals(users.count(), 1) + self.assertEqual(users.count(), 1) self.assertTrue(self.student_one in users) # add some participants @@ -598,7 +598,7 @@ def test_collaboration_sync_model(self): project.collaboration_sync_group(collaboration) self.assertIsNotNone(collaboration.group) users = collaboration.group.user_set.all() - self.assertEquals(users.count(), 2) + self.assertEqual(users.count(), 2) self.assertTrue(self.student_one in users) self.assertTrue(self.student_two in users) @@ -607,7 +607,7 @@ def test_collaboration_sync_model(self): project.collaboration_sync_group(collaboration) self.assertIsNotNone(collaboration.group) users = collaboration.group.user_set.all() - self.assertEquals(users.count(), 1) + self.assertEqual(users.count(), 1) self.assertTrue(self.student_one in users) self.assertFalse(self.student_two in users) @@ -619,27 +619,27 @@ def test_collaboration_create_or_update(self): project.create_or_update_collaboration(PUBLISH_DRAFT[0]) collaboration = project.get_collaboration() - self.assertEquals(collaboration.policy_record.policy_name, - PUBLISH_DRAFT[0]) + self.assertEqual(collaboration.policy_record.policy_name, + PUBLISH_DRAFT[0]) project.create_or_update_collaboration(PUBLISH_WHOLE_CLASS[0]) collaboration = project.get_collaboration() - self.assertEquals(collaboration.policy_record.policy_name, - PUBLISH_WHOLE_CLASS[0]) + self.assertEqual(collaboration.policy_record.policy_name, + PUBLISH_WHOLE_CLASS[0]) def test_create_or_update_item(self): project = ProjectFactory.create( course=self.sample_course, author=self.student_one) project.create_or_update_item(self.asset1.id) - self.assertEquals(project.assignmentitem_set.first().asset, - self.asset1) + self.assertEqual(project.assignmentitem_set.first().asset, + self.asset1) asset2 = AssetFactory.create(course=self.sample_course, primary_source='youtube') project.create_or_update_item(asset2.id) - self.assertEquals(project.assignmentitem_set.first().asset, asset2) + self.assertEqual(project.assignmentitem_set.first().asset, asset2) def test_set_parent(self): project = ProjectFactory.create( @@ -647,7 +647,7 @@ def test_set_parent(self): self.assertIsNone(project.assignment()) project.set_parent(self.assignment.id) - self.assertEquals(project.assignment(), self.assignment) + self.assertEqual(project.assignment(), self.assignment) def test_can_read(self): self.assertTrue(self.project_private.can_read( @@ -738,7 +738,7 @@ def test_can_read_composition_assignment_response(self): def test_visible_assignments_by_course_student(self): lst = Project.objects.visible_assignments_by_course( self.sample_course, self.student_one) - self.assertEquals(len(lst), 4) + self.assertEqual(len(lst), 4) self.assertTrue(self.selection_assignment in lst) self.assertTrue(self.sequence_assignment in lst) self.assertTrue(self.assignment in lst) @@ -746,7 +746,7 @@ def test_visible_assignments_by_course_student(self): def test_visible_assignments_by_course_faculty(self): lst = Project.objects.visible_assignments_by_course( self.sample_course, self.instructor_one) - self.assertEquals(len(lst), 5) + self.assertEqual(len(lst), 5) self.assertTrue(self.selection_assignment in lst) self.assertTrue(self.sequence_assignment in lst) self.assertTrue(self.assignment in lst) @@ -755,7 +755,7 @@ def test_visible_assignments_by_course_faculty(self): def test_unresponded_assignments(self): lst = Project.objects.unresponded_assignments(self.sample_course, self.student_one) - self.assertEquals(len(lst), 4) + self.assertEqual(len(lst), 4) self.assertTrue(self.selection_assignment in lst) self.assertTrue(self.sequence_assignment in lst) self.assertTrue(self.assignment in lst) @@ -768,7 +768,7 @@ def test_unresponded_assignments(self): lst = Project.objects.unresponded_assignments(self.sample_course, self.student_one) - self.assertEquals(len(lst), 3) + self.assertEqual(len(lst), 3) self.assertTrue(self.assignment in lst) self.assertTrue(self.sequence_assignment in lst) @@ -780,7 +780,7 @@ def test_unresponded_assignments(self): lst = Project.objects.unresponded_assignments(self.sample_course, self.student_one) - self.assertEquals(len(lst), 2) + self.assertEqual(len(lst), 2) self.assertTrue(self.sequence_assignment in lst) def test_is_participant(self): diff --git a/mediathread/projects/tests/test_templatetags.py b/mediathread/projects/tests/test_templatetags.py index 0dff19b99a..7255a05632 100644 --- a/mediathread/projects/tests/test_templatetags.py +++ b/mediathread/projects/tests/test_templatetags.py @@ -56,7 +56,7 @@ def test_assignment_response_tags(self): self.assertEqual(len(responses), 1) self.assertEqual(responses[0], visible_response) - self.assertEquals(published_assignment_responses(assignment), 1) + self.assertEqual(published_assignment_responses(assignment), 1) responses = my_assignment_responses(assignment, self.student_two) self.assertEqual(responses.count(), 1) @@ -82,7 +82,7 @@ def _add_comment(self, discussion, author): self.client.login(username=author.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_discussion_assignment_response_tags(self): self.client.login(username=self.instructor_one.username, @@ -97,7 +97,7 @@ def test_discussion_assignment_response_tags(self): response = self.client.post(url, data, follow=True) self.assertEqual(response.status_code, 200) assignment = Project.objects.get(title='Important Discussion') - self.assertEquals(published_assignment_responses(assignment), 0) + self.assertEqual(published_assignment_responses(assignment), 0) self.assertEqual( comment_count(assignment, self.instructor_one)[0], 1) self.assertEqual( @@ -108,9 +108,9 @@ def test_discussion_assignment_response_tags(self): # add a comment discussion = assignment.course_discussion() self._add_comment(discussion, self.instructor_two) - self.assertEquals(published_assignment_responses(assignment), 0) + self.assertEqual(published_assignment_responses(assignment), 0) self._add_comment(discussion, self.student_one) - self.assertEquals(published_assignment_responses(assignment), 1) + self.assertEqual(published_assignment_responses(assignment), 1) self.assertEqual( comment_count(assignment, self.instructor_two)[0], 1) diff --git a/mediathread/projects/tests/test_views.py b/mediathread/projects/tests/test_views.py index 694cc6a75c..1442128fe6 100644 --- a/mediathread/projects/tests/test_views.py +++ b/mediathread/projects/tests/test_views.py @@ -109,7 +109,7 @@ def test_project_save_doesnotexist(self): # Does not exist response = self.client.post('/project/save/1001/', {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 404) + self.assertEqual(response.status_code, 404) def test_project_save_cannot_edit(self): self.assertTrue( @@ -121,7 +121,7 @@ def test_project_save_cannot_edit(self): url = '/project/save/%s/' % self.project_private.id response = self.client.post(url, follow=True, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) def test_project_save_nonajax(self): self.assertTrue( @@ -135,12 +135,12 @@ def test_project_save_nonajax(self): url = '/project/save/%s/' % self.project_private.id response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_project_save_valid(self): versions = Version.objects.get_for_object( self.project_private).get_unique() - self.assertEquals(sum(1 for v in versions), 1) + self.assertEqual(sum(1 for v in versions), 1) self.assertTrue(self.client.login(username=self.student_one.username, password='test')) @@ -153,24 +153,24 @@ def test_project_save_valid(self): url = '/project/save/%s/' % self.project_private.id response = self.client.post(url, data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) - self.assertEquals(the_json["status"], "success") + self.assertEqual(the_json["status"], "success") self.assertFalse(the_json["is_essay_assignment"]) - self.assertEquals(the_json["title"], "Private Student Essay") - self.assertEquals(the_json["revision"]["visibility"], "Draft") + self.assertEqual(the_json["title"], "Private Student Essay") + self.assertEqual(the_json["revision"]["visibility"], "Draft") self.assertIsNone(the_json["revision"]["public_url"]) - self.assertEquals(the_json["revision"]["due_date"], "") + self.assertEqual(the_json["revision"]["due_date"], "") project = Project.objects.get(id=self.project_private.id) - self.assertEquals(project.author, self.student_one) + self.assertEqual(project.author, self.student_one) self.assertIn(self.student_one, project.participants.all()) self.assertIn(self.student_two, project.participants.all()) versions = Version.objects.get_for_object( self.project_private).get_unique() - self.assertEquals(sum(1 for v in versions), 2) + self.assertEqual(sum(1 for v in versions), 2) def test_project_save_swap_authors(self): self.assertTrue(self.client.login(username=self.student_one.username, @@ -184,7 +184,7 @@ def test_project_save_swap_authors(self): url = '/project/save/%s/' % self.project_private.id response = self.client.post(url, data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertTrue(self.client.login(username=self.student_two.username, password='test')) @@ -197,10 +197,10 @@ def test_project_save_swap_authors(self): url = '/project/save/%s/' % self.project_private.id response = self.client.post(url, data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) project = Project.objects.get(id=self.project_private.id) - self.assertEquals(project.author, self.student_two) + self.assertEqual(project.author, self.student_two) self.assertNotIn(self.student_one, project.participants.all()) self.assertIn(self.student_two, project.participants.all()) @@ -216,10 +216,10 @@ def test_project_save_invalid_title(self): url = '/project/save/%s/' % self.project_private.id response = self.client.post(url, data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) - self.assertEquals(the_json["status"], "error") + self.assertEqual(the_json["status"], "error") self.assertTrue(the_json["msg"].startswith(' "" is not valid')) def test_project_create_and_save(self): @@ -229,7 +229,7 @@ def test_project_create_and_save(self): data = {u'title': [u'']} response = self.client.post('/project/create/', data, follow=True) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertTrue(response.redirect_chain[0][0].startswith( '/course/{}/project/view/'.format(self.sample_course.id))) @@ -237,10 +237,10 @@ def test_project_create_and_save(self): title='Untitled') versions = Version.objects.get_for_object(project).get_unique() - self.assertEquals(sum(1 for v in versions), 1) + self.assertEqual(sum(1 for v in versions), 1) self.assertIsNone(project.date_submitted) self.assertIn(self.student_one, project.participants.all()) - self.assertEquals(project.author, self.student_one) + self.assertEqual(project.author, self.student_one) data = {u'body': [u'

abcdefghi

'], u'participants': [self.student_one.id], @@ -250,12 +250,12 @@ def test_project_create_and_save(self): url = '/project/save/%s/' % project.id response = self.client.post(url, data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) project = Project.objects.get(title='Student Essay') versions = Version.objects.get_for_object(project).get_unique() - self.assertEquals(sum(1 for v in versions), 2) + self.assertEqual(sum(1 for v in versions), 2) self.assertIsNotNone(project.date_submitted) def test_assignment_response_create(self): @@ -267,7 +267,7 @@ def test_assignment_response_create(self): u'parent': self.assignment.pk} response = self.client.post('/project/create/', data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_project_delete(self): ctype = ContentType.objects.get(model='project', app_label='projects') @@ -276,19 +276,19 @@ def test_project_delete(self): # anonymous response = self.client.post(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # as non-owner self.client.login(username=self.student_two.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.post(url, {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # as owner -- success self.client.login(username=self.student_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.post(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.assertIsNone(Project.objects.filter(id=project_id).first()) with self.assertRaises(Collaboration.DoesNotExist): Collaboration.objects.get(content_type=ctype, @@ -297,7 +297,7 @@ def test_project_delete(self): # invalid project id url = reverse('project-delete', args=[213456]) response = self.client.post(url, {}) - self.assertEquals(response.status_code, 404) + self.assertEqual(response.status_code, 404) def test_assignment_delete(self): ctype = ContentType.objects.get(model='project', app_label='projects') @@ -305,12 +305,12 @@ def test_assignment_delete(self): title='Zeta', course=self.sample_course, author=self.student_three, date_submitted=datetime.now(), policy='PublicEditorsAreOwners', parent=self.assignment) - self.assertEquals(response1.assignment(), self.assignment) + self.assertEqual(response1.assignment(), self.assignment) response2 = ProjectFactory.create( title='Omega', course=self.sample_course, author=self.student_one, policy='PrivateEditorsAreOwners', parent=self.assignment) - self.assertEquals(response1.assignment(), self.assignment) + self.assertEqual(response1.assignment(), self.assignment) project_id = self.assignment.id url = reverse('project-delete', args=[project_id]) @@ -318,7 +318,7 @@ def test_assignment_delete(self): password='test') self.switch_course(self.client, self.sample_course) response = self.client.post(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) with self.assertRaises(Project.DoesNotExist): Project.objects.get(id=project_id) @@ -344,7 +344,7 @@ def test_selection_assignment_delete(self): password='test') self.switch_course(self.client, self.sample_course) response = self.client.post(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) with self.assertRaises(Project.DoesNotExist): Project.objects.get(id=selection_assignment.id) @@ -360,7 +360,7 @@ def test_sequence_assignment_response_delete(self): response1 = ProjectFactory.create( title='Zeta', course=self.sample_course, author=self.student_one, parent=sequence_assignment) - self.assertEquals(response1.assignment(), sequence_assignment) + self.assertEqual(response1.assignment(), sequence_assignment) psa = ProjectSequenceAssetFactory(project=response1) @@ -368,7 +368,7 @@ def test_sequence_assignment_response_delete(self): self.client.login(username=self.student_one.username, password='test') response = self.client.post(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) with self.assertRaises(Project.DoesNotExist): Project.objects.get(id=response1.id) @@ -386,19 +386,19 @@ def test_unsubmit_response(self): # anonymous response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # as owner self.client.login(username=self.student_one.username, password='test') response = self.client.post(url, data) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # as faculty self.client.login(username=self.instructor_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.post(url, data) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # resave the response as submitted assignment_response.create_or_update_collaboration('CourseProtected') @@ -408,15 +408,15 @@ def test_unsubmit_response(self): self.client.login(username=self.instructor_one.username, password='test') response = self.client.post(url, data, follow=True) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertTrue(response.redirect_chain[0][0].startswith( '/project/view/')) assignment_response = Project.objects.get(id=assignment_response.id) self.assertFalse(assignment_response.is_submitted()) collaboration = assignment_response.get_collaboration() - self.assertEquals(collaboration.policy_record.policy_name, - 'PrivateEditorsAreOwners') + self.assertEqual(collaboration.policy_record.policy_name, + 'PrivateEditorsAreOwners') def test_update_visibility_view(self): assignment_response = ProjectFactory.create( @@ -427,17 +427,17 @@ def test_update_visibility_view(self): # anonymous response = self.client.post(url) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # as owner, no data self.client.login(username=self.student_one.username, password='test') response = self.client.post(url) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # with data data = {'publish': PUBLISH_WHOLE_WORLD[0]} response = self.client.post(url, data) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.assertIsNotNone(assignment_response.public_url()) def test_project_revisions(self): @@ -445,27 +445,27 @@ def test_project_revisions(self): args=[self.sample_course.id, self.project_private.id]) response = self.client.get(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # forbidden as non-class participant self.client.login(username=self.alt_student.username, password='test') self.switch_course(self.client, self.alt_course) response = self.client.get(url, {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # forbidden as non project-participant self.client.login(username=self.student_two.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.get(url, {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # class participant self.client.login(username=self.student_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) - self.assertEquals(len(response.context['versions']), 1) + self.assertEqual(response.status_code, 200) + self.assertEqual(len(response.context['versions']), 1) def test_project_view_readonly(self): version = next(self.project_private.versions()) @@ -475,22 +475,22 @@ def test_project_view_readonly(self): # anonymous response = self.client.get(url, {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # forbidden self.client.login(username=self.student_two.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # owner self.client.login(username=self.student_one.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) # ajax response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) self.assertTrue('panels' in the_json) @@ -500,7 +500,7 @@ def test_project_public_view(self): # still private response = self.client.get(url, {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # reset to public self.project_private.create_or_update_collaboration( @@ -510,7 +510,7 @@ def test_project_public_view(self): url = self.project_private.public_url() response = self.client.get(url, {}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) def test_project_workspace_errors(self): project_id = self.project_private.id @@ -518,18 +518,18 @@ def test_project_workspace_errors(self): # invalid method response = self.client.post(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) self.client.login(username=self.student_two.username, password='test') # as non-owner response = self.client.get(url) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # invalid project id url = reverse('project-workspace', args=[12345]) response = self.client.get(url) - self.assertEquals(response.status_code, 404) + self.assertEqual(response.status_code, 404) def test_project_workspace(self): project_id = self.project_private.id @@ -538,9 +538,9 @@ def test_project_workspace(self): # as owner self.client.login(username=self.student_one.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 200) - self.assertEquals(response.context['project'], self.project_private) - self.assertEquals(response.context['space_owner'], 'student_one') + self.assertEqual(response.status_code, 200) + self.assertEqual(response.context['project'], self.project_private) + self.assertEqual(response.context['space_owner'], 'student_one') def test_project_workspace_ajax(self): project_id = self.project_private.id @@ -550,28 +550,28 @@ def test_project_workspace_ajax(self): self.client.login(username=self.student_one.username, password='test') response = self.client.get(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = json.loads(response.content) - self.assertEquals(the_json['space_owner'], 'student_one') + self.assertEqual(the_json['space_owner'], 'student_one') - self.assertEquals(len(the_json['panels']), 2) + self.assertEqual(len(the_json['panels']), 2) panel = the_json['panels'][0] self.assertFalse(panel['is_faculty']) - self.assertEquals(len(panel['owners']), 6) - self.assertEquals(panel['vocabulary'], []) - self.assertEquals(panel['template'], 'project') - self.assertEquals(len(panel['context']['annotations']), 2) - self.assertEquals(len(panel['context']['assets']), 1) + self.assertEqual(len(panel['owners']), 6) + self.assertEqual(panel['vocabulary'], []) + self.assertEqual(panel['template'], 'project') + self.assertEqual(len(panel['context']['annotations']), 2) + self.assertEqual(len(panel['context']['assets']), 1) self.assertTrue(panel['context']['can_edit']) self.assertFalse(panel['context']['create_instructor_feedback']) self.assertFalse(panel['context']['editing']) self.assertTrue('form' in panel['context']) self.assertTrue('project' in panel['context']) - self.assertEquals(panel['context']['response_count'], 0) - self.assertEquals(panel['context']['responses'], []) - self.assertEquals(panel['context']['type'], 'project') + self.assertEqual(panel['context']['response_count'], 0) + self.assertEqual(panel['context']['responses'], []) + self.assertEqual(panel['context']['type'], 'project') def test_project_workspace_collaborator(self): project_id = self.project_private.id @@ -582,9 +582,9 @@ def test_project_workspace_collaborator(self): self.client.login(username=self.student_two.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 200) - self.assertEquals(response.context['project'], self.project_private) - self.assertEquals(response.context['space_owner'], 'student_two') + self.assertEqual(response.status_code, 200) + self.assertEqual(response.context['project'], self.project_private) + self.assertEqual(response.context['space_owner'], 'student_two') class TestProjectSortView(MediathreadTestMixin, TestCase): @@ -598,17 +598,17 @@ def test_basics(self): # anonymous response = c.post(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # student c.login(username=self.student_one.username, password='test') response = c.post(url, {}, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # instructor, but no ajax c.login(username=self.instructor_one.username, password='test') response = c.post(url, {}) - self.assertEquals(response.status_code, 405) + self.assertEqual(response.status_code, 405) def test_sort(self): url = reverse('project-sort') @@ -626,14 +626,14 @@ def test_sort(self): data = {'project': [project2.id, project1.id]} response = c.post(url, data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) # ordinality should be reversed project = Project.objects.get(id=project1.id) - self.assertEquals(project.ordinality, 1) + self.assertEqual(project.ordinality, 1) project = Project.objects.get(id=project2.id) - self.assertEquals(project.ordinality, 0) + self.assertEqual(project.ordinality, 0) class SelectionAssignmentViewTest(MediathreadTestMixin, TestCase): @@ -656,37 +656,37 @@ def test_view(self): # anonymous response = self.client.get(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # alt course instructor self.client.login(username=self.alt_instructor.username, password='test') self.switch_course(self.client, self.alt_course) response = self.client.get(url, {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # student self.client.login(username=self.student_one.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # author self.client.login(username=self.instructor_one.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) def test_get_assignment(self): view = SelectionAssignmentView() - self.assertEquals(self.assignment, - view.get_assignment(self.assignment)) + self.assertEqual(self.assignment, + view.get_assignment(self.assignment)) response = ProjectFactory.create( course=self.sample_course, author=self.student_one, policy='PrivateEditorsAreOwners', parent=self.assignment) - self.assertEquals(self.assignment, - view.get_assignment(response)) + self.assertEqual(self.assignment, + view.get_assignment(response)) def test_get_my_response(self): view = SelectionAssignmentView() @@ -706,7 +706,7 @@ def test_get_my_response(self): policy='PrivateEditorsAreOwners', parent=self.assignment) responses = self.assignment.responses(self.sample_course, self.student_one) - self.assertEquals(response, view.get_my_response(responses)) + self.assertEqual(response, view.get_my_response(responses)) def test_get_peer_response(self): view = SelectionAssignmentView() @@ -721,7 +721,7 @@ def test_get_peer_response(self): request.user = self.student_one view.request = request - self.assertEquals(response, view.get_peer_response(response)) + self.assertEqual(response, view.get_peer_response(response)) def test_get_context_data(self): response = ProjectFactory.create( @@ -738,14 +738,14 @@ def test_get_context_data(self): view.project = self.assignment ctx = view.get_context_data(project_id=self.assignment.id) - self.assertEquals(ctx['assignment'], self.assignment) + self.assertEqual(ctx['assignment'], self.assignment) self.assertFalse(ctx['assignment_can_edit']) self.assertTrue(ctx['response_can_edit']) - self.assertEquals(ctx['my_response'], response) - self.assertEquals(ctx['the_response'], response) - self.assertEquals(ctx['item'], self.asset) - self.assertEquals(ctx['response_view_policies'], RESPONSE_VIEW_POLICY) - self.assertEquals(ctx['submit_policy'], 'CourseProtected') + self.assertEqual(ctx['my_response'], response) + self.assertEqual(ctx['the_response'], response) + self.assertEqual(ctx['item'], self.asset) + self.assertEqual(ctx['response_view_policies'], RESPONSE_VIEW_POLICY) + self.assertEqual(ctx['submit_policy'], 'CourseProtected') self.assertTrue('vocabulary' in ctx) self.assertTrue('item_json' in ctx) @@ -764,11 +764,11 @@ def test_get_context_data_for_my_response(self): view.project = response ctx = view.get_context_data(project_id=response.id) - self.assertEquals(ctx['assignment'], self.assignment) + self.assertEqual(ctx['assignment'], self.assignment) self.assertFalse(ctx['assignment_can_edit']) self.assertTrue(ctx['response_can_edit']) - self.assertEquals(ctx['my_response'], response) - self.assertEquals(ctx['the_response'], response) + self.assertEqual(ctx['my_response'], response) + self.assertEqual(ctx['the_response'], response) def test_get_context_data_for_a_response(self): response = ProjectFactory.create( @@ -785,11 +785,11 @@ def test_get_context_data_for_a_response(self): view.project = response ctx = view.get_context_data(project_id=response.id) - self.assertEquals(ctx['assignment'], self.assignment) + self.assertEqual(ctx['assignment'], self.assignment) self.assertFalse(ctx['assignment_can_edit']) self.assertFalse(ctx['response_can_edit']) self.assertIsNone(ctx['my_response']) - self.assertEquals(ctx['the_response'], response) + self.assertEqual(ctx['the_response'], response) def test_public_view(self): assignment_response = ProjectFactory.create( @@ -798,7 +798,7 @@ def test_public_view(self): policy=PUBLISH_WHOLE_WORLD[0], parent=self.assignment) response = self.client.get(assignment_response.public_url(), {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) class SelectionAssignmentEditViewTest(MediathreadTestMixin, TestCase): @@ -819,7 +819,7 @@ def test_get_create(self): self.client.login(username=self.instructor_one.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) def test_save(self): asset1 = AssetFactory.create(course=self.sample_course, @@ -840,14 +840,14 @@ def test_save(self): } response = self.client.post(url, data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) # verify project = Project.objects.get(id=self.project.id) - self.assertEquals(project.title, 'Updated') - self.assertEquals(project.body, 'Body Text') - self.assertEquals(project.assignmentitem_set.count(), 1) - self.assertEquals(project.assignmentitem_set.first().asset, asset1) + self.assertEqual(project.title, 'Updated') + self.assertEqual(project.body, 'Body Text') + self.assertEqual(project.assignmentitem_set.count(), 1) + self.assertEqual(project.assignmentitem_set.first().asset, asset1) # swap out the asset data = { @@ -857,9 +857,9 @@ def test_save(self): } response = self.client.post(url, data, HTTP_X_REQUESTED_WITH='XMLHttpRequest') - self.assertEquals(response.status_code, 200) - self.assertEquals(project.assignmentitem_set.count(), 1) - self.assertEquals(project.assignmentitem_set.first().asset, asset2) + self.assertEqual(response.status_code, 200) + self.assertEqual(project.assignmentitem_set.count(), 1) + self.assertEqual(project.assignmentitem_set.first().asset, asset2) class SequenceAssignmentViewTest(MediathreadTestMixin, TestCase): @@ -886,12 +886,12 @@ def test_get_context_data_for_assignment(self): view.project = self.assignment ctx = view.get_context_data(project_id=self.assignment.id) - self.assertEquals(ctx['assignment'], self.assignment) + self.assertEqual(ctx['assignment'], self.assignment) self.assertFalse(ctx['assignment_can_edit']) self.assertTrue(ctx['response_can_edit']) - self.assertEquals(ctx['my_response'], response) - self.assertEquals(ctx['the_response'], response) - self.assertEquals(ctx['responses'], [response]) + self.assertEqual(ctx['my_response'], response) + self.assertEqual(ctx['the_response'], response) + self.assertEqual(ctx['responses'], [response]) self.assertTrue(ctx['show_instructions']) self.assertFalse(ctx['allow_public_compositions']) @@ -910,12 +910,12 @@ def test_get_context_data_my_response(self): view.project = self.assignment ctx = view.get_context_data(project_id=response.id) - self.assertEquals(ctx['assignment'], self.assignment) + self.assertEqual(ctx['assignment'], self.assignment) self.assertFalse(ctx['assignment_can_edit']) self.assertTrue(ctx['response_can_edit']) - self.assertEquals(ctx['my_response'], response) - self.assertEquals(ctx['the_response'], response) - self.assertEquals(ctx['responses'], [response]) + self.assertEqual(ctx['my_response'], response) + self.assertEqual(ctx['the_response'], response) + self.assertEqual(ctx['responses'], [response]) self.assertTrue(ctx['show_instructions']) def test_get_context_data_a_response(self): @@ -937,12 +937,12 @@ def test_get_context_data_a_response(self): view.project = self.assignment ctx = view.get_context_data(project_id=response.id) - self.assertEquals(ctx['assignment'], self.assignment) + self.assertEqual(ctx['assignment'], self.assignment) self.assertFalse(ctx['assignment_can_edit']) self.assertFalse(ctx['response_can_edit']) - self.assertEquals(ctx['my_response'], my_response) - self.assertEquals(ctx['the_response'], response) - self.assertEquals(ctx['responses'], [my_response]) + self.assertEqual(ctx['my_response'], my_response) + self.assertEqual(ctx['the_response'], response) + self.assertEqual(ctx['responses'], [my_response]) self.assertTrue(ctx['show_instructions']) def test_public_view(self): @@ -952,16 +952,16 @@ def test_public_view(self): policy=PUBLISH_WHOLE_WORLD[0], parent=self.assignment) response = self.client.get(assignment_response.public_url(), {}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) - self.assertEquals(response.context['the_response'], - assignment_response) + self.assertEqual(response.context['the_response'], + assignment_response) self.assertFalse(response.context['response_can_edit']) self.assertFalse(response.context['assignment_can_edit']) self.assertFalse(response.context['is_faculty']) self.assertIsNone(response.context['my_response']) self.assertIsNone(response.context['feedback']) - self.assertEquals(response.context['responses'], []) + self.assertEqual(response.context['responses'], []) class CompositionAssignmentViewTest(MediathreadTestMixin, TestCase): @@ -980,19 +980,19 @@ def test_view(self): # anonymous response = self.client.get(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # student self.client.login(username=self.student_one.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) # author self.client.login(username=self.instructor_one.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) def test_get_extra_context(self): url = reverse('project-workspace', @@ -1000,7 +1000,7 @@ def test_get_extra_context(self): self.client.login(username=self.instructor_one.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertTrue(response.context_data['show_instructions']) self.client.login(username=self.student_one.username, @@ -1041,26 +1041,26 @@ def test_get_edit(self): # anonymous response = self.client.get(url, {}) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # alt course instructor self.client.login(username=self.alt_instructor.username, password='test') self.switch_course(self.client, self.alt_course) response = self.client.get(url, {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # student self.client.login(username=self.student_one.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # author self.client.login(username=self.instructor_one.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) def test_get_create(self): url = reverse('sequence-assignment-create', @@ -1070,7 +1070,7 @@ def test_get_create(self): self.client.login(username=self.instructor_one.username, password='test') response = self.client.get(url, {}) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) class ProjectItemViewTest(MediathreadTestMixin, TestCase): @@ -1122,12 +1122,12 @@ def assert_visible_notes(self, viewer, visible, response = self.view.get(None, project_id=self.assignment.id, asset_id=self.asset.id) the_json = json.loads(response.content) - self.assertEquals(len(the_json['assets']), 1) + self.assertEqual(len(the_json['assets']), 1) notes = list(the_json['assets'].values())[0]['annotations'] for idx, note in enumerate(notes): - self.assertEquals(note['id'], visible[idx][0]) - self.assertEquals(note['editable'], visible[idx][1]) + self.assertEqual(note['id'], visible[idx][0]) + self.assertEqual(note['editable'], visible[idx][1]) self.assertFalse(note['citable']) def test_get(self): @@ -1204,7 +1204,7 @@ def test_get_project_owner_self(self): view.request = RequestFactory().get(url) view.request.course = self.sample_course view.request.user = self.student_one - self.assertEquals(view.get_project_owner(), self.student_one) + self.assertEqual(view.get_project_owner(), self.student_one) def test_get_project_owner_invalid(self): view = ProjectListView() @@ -1225,13 +1225,13 @@ def test_get_project_owner_alt_course(self): view.request.course = self.sample_course view.request.user = self.student_one - with self.assertRaisesRegexp(Http404, 'not enrolled'): + with self.assertRaisesRegex(Http404, 'not enrolled'): view.get_project_owner() def test_anonymous(self): url = reverse('project-list', args=[self.sample_course.id]) response = self.client.get(url) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_get(self): # one assignment @@ -1243,44 +1243,44 @@ def test_get(self): self.client.login(username=self.student_one.username, password='test') response = self.client.get(url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) ctx = response.context_data - self.assertEquals(ctx['object_list'].count(), 0) - self.assertEquals(ctx['owner'].username, 'student_one') - self.assertEquals(ctx['sortby'], 'title') - self.assertEquals(ctx['direction'], 'asc') - self.assertEquals(ctx['user_has_projects'], False) + self.assertEqual(ctx['object_list'].count(), 0) + self.assertEqual(ctx['owner'].username, 'student_one') + self.assertEqual(ctx['sortby'], 'title') + self.assertEqual(ctx['direction'], 'asc') + self.assertEqual(ctx['user_has_projects'], False) def test_get_sorted(self): self.client.login(username=self.student_one.username, password='test') p1 = ProjectFactory.create( - course=self.sample_course, author=self.student_one, - title='A', policy='PrivateEditorsAreOwners') + course=self.sample_course, author=self.student_one, + title='A', policy='PrivateEditorsAreOwners') p2 = ProjectFactory.create( - course=self.sample_course, author=self.student_one, - title='B', policy='PrivateEditorsAreOwners') + course=self.sample_course, author=self.student_one, + title='B', policy='PrivateEditorsAreOwners') url = reverse('project-list', args=[self.sample_course.id]) response = self.client.get(url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) ctx = response.context_data - self.assertEquals(ctx['object_list'].count(), 2) - self.assertEquals(ctx['object_list'][0], p1) - self.assertEquals(ctx['object_list'][1], p2) - self.assertEquals(ctx['sortby'], 'title') - self.assertEquals(ctx['direction'], 'asc') - self.assertEquals(ctx['user_has_projects'], True) + self.assertEqual(ctx['object_list'].count(), 2) + self.assertEqual(ctx['object_list'][0], p1) + self.assertEqual(ctx['object_list'][1], p2) + self.assertEqual(ctx['sortby'], 'title') + self.assertEqual(ctx['direction'], 'asc') + self.assertEqual(ctx['user_has_projects'], True) url = '{}?direction=desc'.format(url) response = self.client.get(url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) ctx = response.context_data - self.assertEquals(ctx['object_list'].count(), 2) - self.assertEquals(ctx['object_list'][0], p2) - self.assertEquals(ctx['object_list'][1], p1) - self.assertEquals(ctx['direction'], 'desc') + self.assertEqual(ctx['object_list'].count(), 2) + self.assertEqual(ctx['object_list'][0], p2) + self.assertEqual(ctx['object_list'][1], p1) + self.assertEqual(ctx['direction'], 'desc') class AssignmentListViewTest(MediathreadTestMixin, TestCase): @@ -1291,16 +1291,16 @@ def setUp(self): def test_anonymous(self): url = reverse('assignment-list', args=[self.sample_course.id]) response = self.client.get(url) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_get(self): url = reverse('assignment-list', args=[self.sample_course.id]) self.client.login(username=self.student_one.username, password='test') response = self.client.get(url) - self.assertEquals(response.status_code, 200) - self.assertEquals(response.context_data['status'], 'all') - self.assertEquals(response.context_data['title'], '') + self.assertEqual(response.status_code, 200) + self.assertEqual(response.context_data['status'], 'all') + self.assertEqual(response.context_data['title'], '') def test_sort_by_full_name(self): self.client.login(username=self.instructor_one.username, @@ -1316,23 +1316,23 @@ def test_sort_by_full_name(self): url = reverse('assignment-list', args=[self.sample_course.id]) response = self.client.get( '{}?sortby=full_name&direction=asc'.format(url)) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) ctx = response.context_data - self.assertEquals(ctx['object_list'].count(), 2) - self.assertEquals(ctx['object_list'][0], a1) - self.assertEquals(ctx['object_list'][1], a2) - self.assertEquals(ctx['sortby'], 'full_name') - self.assertEquals(ctx['direction'], 'asc') + self.assertEqual(ctx['object_list'].count(), 2) + self.assertEqual(ctx['object_list'][0], a1) + self.assertEqual(ctx['object_list'][1], a2) + self.assertEqual(ctx['sortby'], 'full_name') + self.assertEqual(ctx['direction'], 'asc') response = self.client.get( '{}?sortby=full_name&direction=desc'.format(url)) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) ctx = response.context_data - self.assertEquals(ctx['object_list'].count(), 2) - self.assertEquals(ctx['object_list'][0], a2) - self.assertEquals(ctx['object_list'][1], a1) - self.assertEquals(ctx['sortby'], 'full_name') - self.assertEquals(ctx['direction'], 'desc') + self.assertEqual(ctx['object_list'].count(), 2) + self.assertEqual(ctx['object_list'][0], a2) + self.assertEqual(ctx['object_list'][1], a1) + self.assertEqual(ctx['sortby'], 'full_name') + self.assertEqual(ctx['direction'], 'desc') @unittest.skipIf( settings.DATABASES['default']['ENGINE'] != @@ -1511,7 +1511,7 @@ def test_create(self): url = reverse('discussion-assignment-create', args=[self.sample_course.id]) response = self.client.post(url, data, follow=True) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertTrue(response.redirect_chain[0][0].startswith( '/course/{}/project/view/'.format(self.sample_course.id))) diff --git a/mediathread/projects/views.py b/mediathread/projects/views.py index 9dd9dd0a25..30c13a4205 100644 --- a/mediathread/projects/views.py +++ b/mediathread/projects/views.py @@ -43,7 +43,7 @@ PUBLISHED) from mediathread.taxonomy.api import VocabularyResource from mediathread.taxonomy.models import Vocabulary -from mediathread.util import attach_course_to_request +from mediathread.util import attach_course_to_request, is_ajax from reversion.models import Version from structuredcollaboration.models import Collaboration @@ -175,7 +175,7 @@ def post(self, request, *args, **kwargs): frm.fields[key].label, value[0].lower()) - if request.is_ajax(): + if is_ajax(request): return self.render_to_json_response(ctx) else: return HttpResponseRedirect( @@ -365,7 +365,7 @@ def get(self, request, *args, **kwargs): data = {'space_owner': self.request.user.username} version_number = self.kwargs.get('version_number', None) - if not self.request.is_ajax(): + if not is_ajax(self.request): if version_number: # versioned view ctx = {'course_pk': self.project.course.pk, @@ -620,7 +620,7 @@ def get(self, request, *args, **kwargs): 'space_owner': request.user.username } - if not request.is_ajax(): + if not is_ajax(request): self.template_name = 'projects/composition.html' data['project'] = project return render(request, self.template_name, data) diff --git a/mediathread/reports/tests/test_views.py b/mediathread/reports/tests/test_views.py index b6bac9adf7..7846265d64 100644 --- a/mediathread/reports/tests/test_views.py +++ b/mediathread/reports/tests/test_views.py @@ -68,7 +68,7 @@ def test_class_assignments_report_logged_out(self): url = reverse('class-assignment-report', args=[self.sample_course.id, self.assignment1.id]) response = self.client.get(url) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_class_assignment_report(self): url = reverse('class-assignment-report', @@ -77,23 +77,23 @@ def test_class_assignment_report(self): # as student self.client.login(username=self.student_one.username, password='test') response = self.client.get(url) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # as instructor self.client.login(username=self.instructor_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.get(url) - self.assertEquals(response.status_code, 200) - self.assertEquals(response.context_data['assignment'], - self.assignment1) - self.assertEquals(len(response.context_data['responses']), 2) + self.assertEqual(response.status_code, 200) + self.assertEqual(response.context_data['assignment'], + self.assignment1) + self.assertEqual(len(response.context_data['responses']), 2) # not an assignment url = reverse('class-assignment-report', args=[self.sample_course.id, 1232]) response = self.client.get(url) - self.assertEquals(response.status_code, 404) + self.assertEqual(response.status_code, 404) def test_class_assignments(self): url = reverse('class-assignments', args=[self.sample_course.id]) @@ -101,20 +101,20 @@ def test_class_assignments(self): # as student self.client.login(username=self.student_one.username, password='test') response = self.client.get(url) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # as instructor self.client.login(username=self.instructor_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.get(url) - self.assertEquals(response.status_code, 200) - self.assertEquals(response.context_data['num_students'], 3) - self.assertEquals(len(response.context_data['assignments']), 2) - self.assertEquals(response.context_data['assignments'][0], - self.assignment1) - self.assertEquals(response.context_data['assignments'][1], - self.assignment2) + self.assertEqual(response.status_code, 200) + self.assertEqual(response.context_data['num_students'], 3) + self.assertEqual(len(response.context_data['assignments']), 2) + self.assertEqual(response.context_data['assignments'][0], + self.assignment1) + self.assertEqual(response.context_data['assignments'][1], + self.assignment2) def test_class_summary(self): url = reverse('class-summary', args=[self.sample_course.id]) @@ -122,15 +122,15 @@ def test_class_summary(self): # as student self.client.login(username=self.student_one.username, password='test') response = self.client.get(url) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # as instructor self.client.login(username=self.instructor_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.get(url) - self.assertEquals(response.status_code, 200) - self.assertEquals(len(response.context_data['students']), 5) + self.assertEqual(response.status_code, 200) + self.assertEqual(len(response.context_data['students']), 5) def test_class_activity_report(self): url = reverse('class-activity', args=[self.sample_course.id]) @@ -139,23 +139,23 @@ def test_class_activity_report(self): # as student self.client.login(username=self.student_one.username, password='test') response = self.client.get(url) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # as instructor self.client.login(username=self.instructor_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.get(url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) self.assertTrue('my_feed' in response.context_data) self.assertIsNone(response.context_data['my_feed'].stuff) items = list(response.context_data['my_feed'].items.values()) - self.assertEquals(len(items), 3) - self.assertEquals(items[0].content_object, self.asset1) - self.assertEquals(items[1].content_object, self.response2) - self.assertEquals(items[2].title, "Sample Course Discussion") + self.assertEqual(len(items), 3) + self.assertEqual(items[0].content_object, self.asset1) + self.assertEqual(items[1].content_object, self.response2) + self.assertEqual(items[2].title, "Sample Course Discussion") def test_class_summary_graph(self): self.create_discussion(self.sample_course, self.instructor_one) @@ -165,18 +165,18 @@ def test_class_summary_graph(self): # as student self.client.login(username=self.student_one.username, password='test') response = self.client.get(url) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # as instructor self.client.login(username=self.instructor_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.get(url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) the_json = loads(response.content) - self.assertEquals(len(the_json['links']), 0) - self.assertEquals(len(the_json['nodes']), 6) + self.assertEqual(len(the_json['links']), 0) + self.assertEqual(len(the_json['nodes']), 6) node_names = [] for node in the_json['nodes']: @@ -196,14 +196,14 @@ def test_mediathread_activity_report(self): # as student self.client.login(username=self.student_one.username, password='test') response = self.client.get(url) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # as instructor self.client.login(username=self.instructor_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.get(url) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) def test_mediathread_activity_report_staff(self): url = reverse('mediathread-activity-by-course', @@ -217,10 +217,10 @@ def test_mediathread_activity_report_staff(self): set_course_url = '/?set_course=%s&next=/' % \ self.sample_course.group.name response = self.client.get(set_course_url, follow=True) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) response = self.client.get(url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) def test_self_registration_report(self): UserProfileFactory(user=self.student_one) @@ -231,14 +231,14 @@ def test_self_registration_report(self): # as student self.client.login(username=self.student_one.username, password='test') response = self.client.get(url) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # as instructor self.client.login(username=self.instructor_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.get(url) - self.assertEquals(response.status_code, 302) + self.assertEqual(response.status_code, 302) # as superuser staff = UserFactory(is_staff=True, is_superuser=True) @@ -248,10 +248,10 @@ def test_self_registration_report(self): set_course_url = '/?set_course=%s&next=/' % \ self.sample_course.group.name response = self.client.get(set_course_url, follow=True) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) response = self.client.get(url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) header = ("First Name,Last Name,Email,Title,Institution," "Referred_By,User Story,Created") @@ -297,7 +297,7 @@ def setUp(self): def test_citation_analysis(self): view = AssignmentDetailReport() items, selections = view.citation_analysis(self.response1.citations()) - self.assertEquals(items[0], self.asset) + self.assertEqual(items[0], self.asset) self.assertTrue(self.student_one_selection1 in selections) self.assertTrue(self.student_two_selection in selections) @@ -305,7 +305,7 @@ def test_tag_usage(self): selections = SherdNote.objects.filter(author=self.student_one) view = AssignmentDetailReport() - self.assertAlmostEquals(view.tag_usage(selections), 33.33, 2) + self.assertAlmostEqual(view.tag_usage(selections), 33.33, 2) def test_vocab_usage(self): taxonomy = {'Colors': ['Red', 'Blue', 'Green']} @@ -319,14 +319,14 @@ def test_vocab_usage(self): view.request = RequestFactory().get('/') view.request.course = self.sample_course - self.assertAlmostEquals(view.vocabulary_usage(selections), 33.33, 2) + self.assertAlmostEqual(view.vocabulary_usage(selections), 33.33, 2) def test_percent_used(self): selections = SherdNote.objects.filter(author=self.student_one) view = AssignmentDetailReport() - self.assertEquals(view.percent_used(selections, 0), 0.0) - self.assertEquals(view.percent_used(selections, 3), 100.0) + self.assertEqual(view.percent_used(selections, 0), 0.0) + self.assertEqual(view.percent_used(selections, 3), 100.0) def test_report_rows(self): view = AssignmentDetailReport() @@ -339,22 +339,22 @@ def test_report_rows(self): next(rows) # header row = next(rows) - self.assertEquals(row[0], 'Student One') - self.assertEquals(row[1], 'student_one') - self.assertEquals(row[2], 'Response 1') - self.assertEquals(row[3], 'Shared with Instructor') + self.assertEqual(row[0], 'Student One') + self.assertEqual(row[1], 'student_one') + self.assertEqual(row[2], 'Response 1') + self.assertEqual(row[3], 'Shared with Instructor') self.assertIsNone(row[4]) # row[5] modified date self.assertFalse(row[6]) - self.assertEquals(row[7], 2) # selections - self.assertEquals(row[8], 1) # items - self.assertEquals(row[9], 1) # author selections - self.assertEquals(row[10], 1) # author items + self.assertEqual(row[7], 2) # selections + self.assertEqual(row[8], 1) # items + self.assertEqual(row[9], 1) # author selections + self.assertEqual(row[10], 1) # author items self.assertAlmostEqual(row[11], 33.33, 2) # % author selections used self.assertAlmostEqual(row[12], 100.00) # tag usage - self.assertEquals(row[13], 0.0) # vocab usage - self.assertEquals(row[14], 3) # all author selections - self.assertEquals(row[15], 1) # author collection + self.assertEqual(row[13], 0.0) # vocab usage + self.assertEqual(row[14], 3) # all author selections + self.assertEqual(row[15], 1) # author collection with self.assertRaises(StopIteration): next(rows) @@ -366,11 +366,11 @@ def test_view(self): # as student self.client.login(username=self.student_one.username, password='test') response = self.client.get(url) - self.assertEquals(response.status_code, 403) + self.assertEqual(response.status_code, 403) # as instructor self.client.login(username=self.instructor_one.username, password='test') self.switch_course(self.client, self.sample_course) response = self.client.get(url) - self.assertEquals(response.status_code, 200) + self.assertEqual(response.status_code, 200) diff --git a/mediathread/taxonomy/tests/test_api.py b/mediathread/taxonomy/tests/test_api.py index 27d30c047a..46c66131fb 100644 --- a/mediathread/taxonomy/tests/test_api.py +++ b/mediathread/taxonomy/tests/test_api.py @@ -71,8 +71,8 @@ def test_single_term_relationship(self): asset__title='Asset Two').values_list('id', flat=True) lst = TermRelationship.objects.filter(sherdnote__id__in=notes) - self.assertEquals(len(lst), 1) - self.assertEquals(lst[0].term, Term.objects.get(name='paper')) + self.assertEqual(len(lst), 1) + self.assertEqual(lst[0].term, Term.objects.get(name='paper')) def test_multiple_term_relationship(self): notes = SherdNote.objects.filter( @@ -80,10 +80,10 @@ def test_multiple_term_relationship(self): lst = TermRelationship.objects.filter(sherdnote__id__in=notes) - self.assertEquals(len(lst), 3) - self.assertEquals(lst[0].term, Term.objects.get(name='red')) - self.assertEquals(lst[1].term, Term.objects.get(name='square')) - self.assertEquals(lst[2].term, Term.objects.get(name='square')) + self.assertEqual(len(lst), 3) + self.assertEqual(lst[0].term, Term.objects.get(name='red')) + self.assertEqual(lst[1].term, Term.objects.get(name='square')) + self.assertEqual(lst[2].term, Term.objects.get(name='square')) def test_vocabulary_authorization(self): factory = RequestFactory() @@ -98,7 +98,7 @@ def test_vocabulary_authorization(self): request=request) lst = authorization.read_list(vocabulary, bundle) - self.assertEquals(len(lst), 2) + self.assertEqual(len(lst), 2) def test_vocabulary_get_list(self): self.assertTrue(self.client.login(username=self.student_one.username, @@ -110,11 +110,11 @@ def test_vocabulary_get_list(self): the_json = json.loads(response.content) lst = the_json['objects'] - self.assertEquals(len(lst), 2) - self.assertEquals(lst[0]['display_name'], "Colors") - self.assertEquals(len(lst[0]['term_set']), 3) - self.assertEquals(lst[1]['display_name'], "Shapes") - self.assertEquals(len(lst[1]['term_set']), 2) + self.assertEqual(len(lst), 2) + self.assertEqual(lst[0]['display_name'], "Colors") + self.assertEqual(len(lst[0]['term_set']), 3) + self.assertEqual(lst[1]['display_name'], "Shapes") + self.assertEqual(len(lst[1]['term_set']), 2) def test_vocabulary_render_list(self): request = HttpRequest() @@ -123,11 +123,11 @@ def test_vocabulary_render_list(self): lst = VocabularyResource().render_list(request, qs) - self.assertEquals(len(lst), 2) - self.assertEquals(lst[0]['display_name'], "Colors") - self.assertEquals(len(lst[0]['term_set']), 3) - self.assertEquals(lst[1]['display_name'], "Shapes") - self.assertEquals(len(lst[1]['term_set']), 2) + self.assertEqual(len(lst), 2) + self.assertEqual(lst[0]['display_name'], "Colors") + self.assertEqual(len(lst[0]['term_set']), 3) + self.assertEqual(lst[1]['display_name'], "Shapes") + self.assertEqual(len(lst[1]['term_set']), 2) def test_vocabulary_get_one(self): self.assertTrue( @@ -139,8 +139,8 @@ def test_vocabulary_get_one(self): HTTP_X_REQUESTED_WITH='XMLHttpRequest') the_json = json.loads(response.content) - self.assertEquals(the_json['display_name'], "Shapes") - self.assertEquals(len(the_json['term_set']), 2) + self.assertEqual(the_json['display_name'], "Shapes") + self.assertEqual(len(the_json['term_set']), 2) def test_vocabulary_render_one(self): request = HttpRequest() @@ -148,8 +148,8 @@ def test_vocabulary_render_one(self): vocabulary = Vocabulary.objects.get(name="shapes") detail = VocabularyResource().render_one(request, vocabulary) - self.assertEquals(detail['display_name'], "Shapes") - self.assertEquals(len(detail['term_set']), 2) + self.assertEqual(detail['display_name'], "Shapes") + self.assertEqual(len(detail['term_set']), 2) def test_vocabulary_render_related(self): request = HttpRequest() @@ -158,16 +158,16 @@ def test_vocabulary_render_related(self): notes = SherdNote.objects.filter(title='Left Corner') ctx = VocabularyResource().render_related(request, notes) - self.assertEquals(len(ctx), 2) - self.assertEquals(ctx[0]['display_name'], 'Colors') - self.assertEquals(len(ctx[0]['term_set']), 1) - self.assertEquals(ctx[0]['term_set'][0]['display_name'], 'Red') - self.assertEquals(ctx[0]['term_set'][0]['count'], 1) + self.assertEqual(len(ctx), 2) + self.assertEqual(ctx[0]['display_name'], 'Colors') + self.assertEqual(len(ctx[0]['term_set']), 1) + self.assertEqual(ctx[0]['term_set'][0]['display_name'], 'Red') + self.assertEqual(ctx[0]['term_set'][0]['count'], 1) - self.assertEquals(ctx[1]['display_name'], 'Shapes') - self.assertEquals(len(ctx[1]['term_set']), 1) - self.assertEquals(ctx[1]['term_set'][0]['display_name'], 'Square') - self.assertEquals(ctx[1]['term_set'][0]['count'], 1) + self.assertEqual(ctx[1]['display_name'], 'Shapes') + self.assertEqual(len(ctx[1]['term_set']), 1) + self.assertEqual(ctx[1]['term_set'][0]['display_name'], 'Square') + self.assertEqual(ctx[1]['term_set'][0]['count'], 1) def test_vocabulary_render_related_multiple(self): request = HttpRequest() @@ -176,16 +176,16 @@ def test_vocabulary_render_related_multiple(self): notes = SherdNote.objects.filter(title__in=['Left Corner', 'Nice Tie']) ctx = VocabularyResource().render_related(request, notes) - self.assertEquals(len(ctx), 2) - self.assertEquals(ctx[0]['display_name'], 'Colors') - self.assertEquals(len(ctx[0]['term_set']), 1) - self.assertEquals(ctx[0]['term_set'][0]['display_name'], 'Red') - self.assertEquals(ctx[0]['term_set'][0]['count'], 1) + self.assertEqual(len(ctx), 2) + self.assertEqual(ctx[0]['display_name'], 'Colors') + self.assertEqual(len(ctx[0]['term_set']), 1) + self.assertEqual(ctx[0]['term_set'][0]['display_name'], 'Red') + self.assertEqual(ctx[0]['term_set'][0]['count'], 1) - self.assertEquals(ctx[1]['display_name'], 'Shapes') - self.assertEquals(len(ctx[1]['term_set']), 1) - self.assertEquals(ctx[1]['term_set'][0]['display_name'], 'Square') - self.assertEquals(ctx[1]['term_set'][0]['count'], 2) + self.assertEqual(ctx[1]['display_name'], 'Shapes') + self.assertEqual(len(ctx[1]['term_set']), 1) + self.assertEqual(ctx[1]['term_set'][0]['display_name'], 'Square') + self.assertEqual(ctx[1]['term_set'][0]['count'], 2) def test_vocabulary_render_for_course(self): request = HttpRequest() @@ -194,22 +194,22 @@ def test_vocabulary_render_for_course(self): notes = SherdNote.objects.filter(title='Nice Tie') ctx = VocabularyResource().render_for_course(request, notes) - self.assertEquals(len(ctx), 2) - self.assertEquals(ctx[0]['display_name'], 'Colors') - self.assertEquals(len(ctx[0]['term_set']), 3) - self.assertEquals(ctx[0]['term_set'][0]['display_name'], 'Blue') - self.assertEquals(ctx[0]['term_set'][0]['count'], 0) - self.assertEquals(ctx[0]['term_set'][1]['display_name'], 'Green') - self.assertEquals(ctx[0]['term_set'][1]['count'], 0) - self.assertEquals(ctx[0]['term_set'][2]['display_name'], 'Red') - self.assertEquals(ctx[0]['term_set'][2]['count'], 0) - - self.assertEquals(ctx[1]['display_name'], 'Shapes') - self.assertEquals(len(ctx[1]['term_set']), 2) - self.assertEquals(ctx[1]['term_set'][0]['display_name'], 'Square') - self.assertEquals(ctx[1]['term_set'][0]['count'], 1) - self.assertEquals(ctx[1]['term_set'][1]['display_name'], 'Triangle') - self.assertEquals(ctx[1]['term_set'][1]['count'], 0) + self.assertEqual(len(ctx), 2) + self.assertEqual(ctx[0]['display_name'], 'Colors') + self.assertEqual(len(ctx[0]['term_set']), 3) + self.assertEqual(ctx[0]['term_set'][0]['display_name'], 'Blue') + self.assertEqual(ctx[0]['term_set'][0]['count'], 0) + self.assertEqual(ctx[0]['term_set'][1]['display_name'], 'Green') + self.assertEqual(ctx[0]['term_set'][1]['count'], 0) + self.assertEqual(ctx[0]['term_set'][2]['display_name'], 'Red') + self.assertEqual(ctx[0]['term_set'][2]['count'], 0) + + self.assertEqual(ctx[1]['display_name'], 'Shapes') + self.assertEqual(len(ctx[1]['term_set']), 2) + self.assertEqual(ctx[1]['term_set'][0]['display_name'], 'Square') + self.assertEqual(ctx[1]['term_set'][0]['count'], 1) + self.assertEqual(ctx[1]['term_set'][1]['display_name'], 'Triangle') + self.assertEqual(ctx[1]['term_set'][1]['count'], 0) def test_vocabulary_validation(self): vv = VocabularyValidation() diff --git a/mediathread/taxonomy/tests/test_views.py b/mediathread/taxonomy/tests/test_views.py index 721adcad06..3991aa5eb0 100644 --- a/mediathread/taxonomy/tests/test_views.py +++ b/mediathread/taxonomy/tests/test_views.py @@ -27,7 +27,7 @@ def setUp(self): def test_simple_association(self): term = Term.objects.get(display_name="Square") - self.assertEquals(term.termrelationship_set.count(), 0) + self.assertEqual(term.termrelationship_set.count(), 0) post_data = {'vocabulary': [str(term.id)]} request = self.factory.post('/', post_data) @@ -35,34 +35,34 @@ def test_simple_association(self): related = term.termrelationship_set.first() self.assertIsNotNone(related) - self.assertEquals(related.term, term) - self.assertEquals(related.sherdnote, self.note) + self.assertEqual(related.term, term) + self.assertEqual(related.sherdnote, self.note) def test_removal(self): term = Term.objects.get(display_name="Square") TermRelationship.objects.create(term=term, sherdnote=self.note) - self.assertEquals(term.termrelationship_set.count(), 1) + self.assertEqual(term.termrelationship_set.count(), 1) request = self.factory.post('/', {}) update_vocabulary_terms(request, self.note) - self.assertEquals(term.termrelationship_set.count(), 0) + self.assertEqual(term.termrelationship_set.count(), 0) def test_removal_and_association(self): square = Term.objects.get(display_name="Square") circle = Term.objects.get(display_name="Circle") TermRelationship.objects.create(term=square, sherdnote=self.note) - self.assertEquals(square.termrelationship_set.count(), 1) + self.assertEqual(square.termrelationship_set.count(), 1) post_data = {'vocabulary': [str(circle.id)]} request = self.factory.post('/', post_data) update_vocabulary_terms(request, self.note) related = circle.termrelationship_set.first() - self.assertEquals(related.term, circle) - self.assertEquals(related.sherdnote, self.note) + self.assertEqual(related.term, circle) + self.assertEqual(related.sherdnote, self.note) def test_multiple_associations_and_removals(self): square = Term.objects.get(display_name="Square") @@ -74,11 +74,11 @@ def test_multiple_associations_and_removals(self): TermRelationship.objects.create(term=square, sherdnote=self.note) TermRelationship.objects.create(term=red, sherdnote=self.note) related_terms = TermRelationship.objects.filter(sherdnote=self.note) - self.assertEquals(len(related_terms), 2) - self.assertEquals(related_terms[0].term, red) - self.assertEquals(related_terms[0].sherdnote, self.note) - self.assertEquals(related_terms[1].term, square) - self.assertEquals(related_terms[1].sherdnote, self.note) + self.assertEqual(len(related_terms), 2) + self.assertEqual(related_terms[0].term, red) + self.assertEqual(related_terms[0].sherdnote, self.note) + self.assertEqual(related_terms[1].term, square) + self.assertEqual(related_terms[1].sherdnote, self.note) post_data = { 'vocabulary': [str(circle.id), str(blue.id)] @@ -87,8 +87,8 @@ def test_multiple_associations_and_removals(self): update_vocabulary_terms(request, self.note) related_terms = TermRelationship.objects.filter(sherdnote=self.note) - self.assertEquals(len(related_terms), 2) - self.assertEquals(related_terms[0].term, blue) - self.assertEquals(related_terms[0].sherdnote, self.note) - self.assertEquals(related_terms[1].term, circle) - self.assertEquals(related_terms[1].sherdnote, self.note) + self.assertEqual(len(related_terms), 2) + self.assertEqual(related_terms[0].term, blue) + self.assertEqual(related_terms[0].sherdnote, self.note) + self.assertEqual(related_terms[1].term, circle) + self.assertEqual(related_terms[1].sherdnote, self.note) diff --git a/mediathread/templates/assetmgr/analyze.html b/mediathread/templates/assetmgr/analyze.html index d36d54a7b3..c2dbe3f565 100644 --- a/mediathread/templates/assetmgr/analyze.html +++ b/mediathread/templates/assetmgr/analyze.html @@ -1,25 +1,25 @@ {% spaceless %} -{% ifequal action "collection" %} +{% if action == "collection" %} -{% endifequal %} +{% endif %} -{% ifequal action "cont" %} +{% if action == "cont" %} -{% endifequal %} +{% endif %} -{% ifequal action "analyze" %} +{% if action == "analyze" %} -{% endifequal %} +{% endif %} -{% ifequal action None %} +{% if action == None %} -{% endifequal %} +{% endif %} {% endspaceless %} diff --git a/mediathread/templates/assetmgr/pretender_select.html b/mediathread/templates/assetmgr/pretender_select.html index ccb57f3b05..8445a1189a 100644 --- a/mediathread/templates/assetmgr/pretender_select.html +++ b/mediathread/templates/assetmgr/pretender_select.html @@ -1,6 +1,6 @@ {% load coursetags %} {% if user.is_staff %} - {% ifequal role_in_course "non-member" %} + {% if role_in_course == "non-member" %}
- {% endifequal%} + {% endif %} {% endif %} diff --git a/mediathread/templates/comments/form.html b/mediathread/templates/comments/form.html index c28ebf79d7..9f8380c9e9 100644 --- a/mediathread/templates/comments/form.html +++ b/mediathread/templates/comments/form.html @@ -5,7 +5,7 @@ {% if field.is_hidden %} {{ field }} {% else %} - {% ifnotequal field.name "comment" %} + {% if field.name != "comment" %} @@ -93,7 +93,7 @@
IMAGE / PDF
{% for owner in owners %} - + {% endfor %} @@ -229,7 +229,7 @@

Upload from Computer

@@ -238,7 +238,7 @@

Upload from Computer

  Upload audio - {% endifequal %} + {% endif %} {% endif %} diff --git a/mediathread/templates/projects/clump.html b/mediathread/templates/projects/clump.html index 638c136869..314bd59957 100644 --- a/mediathread/templates/projects/clump.html +++ b/mediathread/templates/projects/clump.html @@ -1,7 +1,7 @@ {% load coursetags %}
  • + {% if clump.type == "asset"%} asset-{{clump.content_object.primary.label}} {% endif %}"> {{clump.title|striptags|safe|default:"(Untitled)"}}
    diff --git a/mediathread/templates/projects/discussion_assignment_edit.html b/mediathread/templates/projects/discussion_assignment_edit.html index be8c05f2d5..a3ce9cc562 100644 --- a/mediathread/templates/projects/discussion_assignment_edit.html +++ b/mediathread/templates/projects/discussion_assignment_edit.html @@ -110,7 +110,7 @@

    Create Discussion Assignment


    + value="{% if form.instance.title != form.instance.DEFAULT_TITLE %}{{form.instance.title}}{% endif %}"/>
    Title is a required field
    diff --git a/mediathread/templates/projects/selection_assignment_edit.html b/mediathread/templates/projects/selection_assignment_edit.html index 1424ca8da4..67f66405d7 100644 --- a/mediathread/templates/projects/selection_assignment_edit.html +++ b/mediathread/templates/projects/selection_assignment_edit.html @@ -143,7 +143,7 @@

    2. Write title & instructions

    + value="{% if form.instance.title != form.instance.DEFAULT_TITLE %}{{form.instance.title}}{% endif %}"/>
    Title is a required field
    diff --git a/mediathread/templates/projects/selection_assignment_view.html b/mediathread/templates/projects/selection_assignment_view.html index 48d483fbb5..3151ec1d48 100644 --- a/mediathread/templates/projects/selection_assignment_view.html +++ b/mediathread/templates/projects/selection_assignment_view.html @@ -203,13 +203,13 @@