Book Image

Mastering Django: Core

By : Nigel George
Book Image

Mastering Django: Core

By: Nigel George

Overview of this book

Mastering Django: Core is a completely revised and updated version of the original Django Book, written by Adrian Holovaty and Jacob Kaplan-Moss - the creators of Django. The main goal of this book is to make you a Django expert. By reading this book, you’ll learn the skills needed to develop powerful websites quickly, with code that is clean and easy to maintain. This book is also a programmer’s manual that provides complete coverage of the current Long Term Support (LTS) version of Django. For developers creating applications for commercial and business critical deployments, Mastering Django: Core provides a complete, up-to-date resource for Django 1.8LTS with a stable code-base, security fixes and support out to 2018.
Table of Contents (33 chapters)
Mastering Django: Core
Credits
About the Author
www.PacktPub.com
Preface
Free Chapter
1
Introduction to Django and Getting Started

Creating a test


When you created your books app with Django's startapp command, it created a file called tests.py in your app directory. This is where any tests for the books app should go. So let's get right to it and write a test:

import datetime 
from django.utils import timezone 
from django.test import TestCase 
from .models import Book 
 
class BookMethodTests(TestCase): 
 
    def test_recent_pub(self): 
""" 
        recent_publication() should return False for future publication  
        dates. 
        """ 
 
        futuredate = timezone.now().date() + datetime.timedelta(days=5) 
        future_pub = Book(publication_date=futuredate) 
        self.assertEqual(future_pub.recent_publication(), False) 

This should all be pretty straight forward as it's nearly exactly what we did in the Django shell, the only real difference is that we now have encapsulated our test code in a class and created an assertion...