MCPcopy
hub / github.com/django/django / test_multi_fields

Method test_multi_fields

tests/model_forms/tests.py:1714–1804  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1712 f.save()
1713
1714 def test_multi_fields(self):
1715 self.create_basic_data()
1716 self.maxDiff = None
1717 # ManyToManyFields are represented by a MultipleChoiceField,
1718 # ForeignKeys and any fields with the 'choices' attribute are
1719 # represented by a ChoiceField.
1720 f = ArticleForm(auto_id=False)
1721 self.assertHTMLEqual(
1722 str(f),
1723 """
1724 <div>Headline:
1725 <input type="text" name="headline" maxlength="50" required>
1726 </div>
1727 <div>Slug:
1728 <input type="text" name="slug" maxlength="50" required>
1729 </div>
1730 <div>Pub date:
1731 <input type="text" name="pub_date" required>
1732 </div>
1733 <div>Writer:
1734 <select name="writer" required>
1735 <option value="" selected>- Select an option -</option>
1736 <option value="%s">Bob Woodward</option>
1737 <option value="%s">Mike Royko</option>
1738 </select>
1739 </div>
1740 <div>Article:
1741 <textarea name="article" cols="40" rows="10" required></textarea>
1742 </div>
1743 <div>Categories:
1744 <select name="categories" multiple>
1745 <option value="%s">Entertainment</option>
1746 <option value="%s">It&#x27;s a test</option>
1747 <option value="%s">Third test</option>
1748 </select>
1749 </div>
1750 <div>Status:
1751 <select name="status">
1752 <option value="" selected>- Select an option -</option>
1753 <option value="1">Draft</option><option value="2">Pending</option>
1754 <option value="3">Live</option>
1755 </select>
1756 </div>
1757 """
1758 % (self.w_woodward.pk, self.w_royko.pk, self.c1.pk, self.c2.pk, self.c3.pk),
1759 )
1760
1761 # Add some categories and test the many-to-many form output.
1762 new_art = Article.objects.create(
1763 article="Hello.",
1764 headline="New headline",
1765 slug="new-headline",
1766 pub_date=datetime.date(1988, 1, 4),
1767 writer=self.w_royko,
1768 )
1769 new_art.categories.add(Category.objects.get(name="Entertainment"))
1770 self.assertSequenceEqual(new_art.categories.all(), [self.c1])
1771 f = ArticleForm(auto_id=False, instance=new_art)

Callers

nothing calls this directly

Calls 8

create_basic_dataMethod · 0.95
assertHTMLEqualMethod · 0.80
ArticleFormClass · 0.70
createMethod · 0.45
addMethod · 0.45
getMethod · 0.45
allMethod · 0.45
as_ulMethod · 0.45

Tested by

no test coverage detected