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
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())
|
|
|