You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

50 lines
1.8 KiB

from datetime import timedelta
from random import randint
from selenium import webdriver
from django.utils import timezone
from django.test import TestCase
from django.shortcuts import reverse
from project.tests.factories import *
from project.utils.selenium_utils import SeleniumExtensions as SE
class CoursesTestCase(TestCase):
@classmethod
def setUpTestData(cls):
create_admin()
create_batch_unique(CourseFactory, status=Course.STATUS_CHOICES[:3], price=[0, 1000],
age=Course.AGE_CHOICES[:2], deferred_start_at=[None, timezone.now() + timedelta(days=randint(5, 15))])
def test_courses_url_accessible(self):
print('get ', reverse('courses'))
resp = self.client.get(reverse('courses'))
self.assertEqual(resp.status_code, 200)
def test_course_url_accessible(self):
for course in Course.objects.filter(status=Course.PUBLISHED):
print('get ', course.url)
resp = self.client.get(course.url)
self.assertEqual(resp.status_code, 200)
@login_admin
def test_course_edit_url_accessible(self):
for course in Course.objects.all():
print('get ', reverse('course_edit', args=[course.id]))
resp = self.client.get(reverse('course_edit', args=[course.id]))
self.assertEqual(resp.status_code, 200)
class CourseEditTestCase(TestCase):
@classmethod
def setUpTestData(cls):
cls.driver = webdriver.Chrome()
create_admin()
create_batch_unique(CourseFactory, status=Course.STATUS_CHOICES[:3], price=[0, 1000],
age=Course.AGE_CHOICES[:2], deferred_start_at=[None, timezone.now() + timedelta(days=randint(5, 15))])
def test_course_edit(self):
print('Course.objects.all().count()', Course.objects.all().count())