The final feature we’d like to add is the ability to get the time in a given city / country.
We can continue to use the same endpoint and provide city and country in the request.
You’ll need to add the Cities to your database by creating a model. Models are interesting to write with TDD, here’s a pattern that I like:
def test_can_create_person(self):
    person = Person.objects.create(
        name="Brenton Cleeland",
        country="AU",
        twitter="@sesh",
    )
The problem with that is that the test isn’t failing by rather the test is broken.
We can fix that by catching that exception and providing a proper message using self.fail().
def test_can_create_person(self):
    try:
        person = Person.objects.create(
            name="Brenton Cleeland",
            country="AU",
            twitter="@sesh",
        )
    except:
        self.fail('Creating model caused an exception')
Now, on to the feature we’d like to add:
/api/time/ endpoint should accept city and country parameters
    current_time, city and country fieldsAgain, here are the tests that I started with (spoiler alert!):
Can you think of some tests that are missing? What about some edge cases and error states? How would you use TDD to test validation of the country or timezone?