В общем сам себе ответил, рабочий тест выглядит так:
def test_item_model_form_valid_data(self):
data = {
'title': 'test_title`',
'description': 'test_description' * 10,
'price': 500
}
file_data = {
'image': InMemoryUploadedFile(
file=create_test_image(),
field_name='image',
name='test.png',
content_type='image/png',
size=45,
charset='utf-8'
)
}
form = ItemModelForm(data=data, files=files_data)
self.assertTrue(form.is_valid())
Входные данные
data
и файл
file_data
необходимо передавать в форму отдельно, проблема была в этом. Думается мне, что это не лучший способ тестировать форму, но гуру к сожалению не подключились. Надо будет ещё поиграться с mock, истина должна быть где-то там.