Testes do Django não geram erros de integridade no CharField

Se tiver o seguinte modelo Django (1.4):

from django.db import models

class SimpleModel(models.Model):
    name = models.CharField(max_length=100)

E esse teste simples:

from django.test import TestCase
from models import SimpleModel
from django.db import IntegrityError

class SimpleTest(TestCase):
    def test_integrity_error(self):
        with self.assertRaises(IntegrityError):
            m = SimpleModel()
            m.save()

Como banco de dados, um banco de dados sqlite3 é usado. Se agora eu executar os testes compython manage.py test <appname> o teste falha comAssertionError: IntegrityError not raised.

A questão é:porque?

Tanto quanto eu entendo (ou pensei em entender) Django os valores padrão para os campos sãoblank=False enull=False então eu diria que salvar uma instância de modelo com o valor padrão (que eu acho que um CharField deve ser uma string vazia) certamente falhará! Então, por que isso não acontece?

questionAnswers(1)

yourAnswerToTheQuestion