-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest_repositories.py
31 lines (27 loc) · 1.03 KB
/
test_repositories.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# tests/test_repositories.py
from unittest import TestCase
from app.models import Tweet
from app.repositories import TweetRepository
class TestTweetRepository(TestCase):
def test_instance_variables(self):
repository = TweetRepository()
self.assertEqual(len(repository.tweets), 0)
def test_add_tweet(self):
repository = TweetRepository()
tweet = Tweet("a new tweet")
repository.add(tweet)
self.assertEqual(len(repository.tweets), 1)
def test_auto_increment_of_ids(self):
repository = TweetRepository()
first_tweet = Tweet("a first tweet")
repository.add(first_tweet)
self.assertEqual(first_tweet.id, 1)
second_tweet = Tweet("a second tweet")
repository.add(second_tweet)
self.assertEqual(second_tweet.id, 2)
def test_get_tweet(self):
repository = TweetRepository()
tweet = Tweet("a new tweet")
repository.add(tweet)
self.assertEqual(tweet, repository.get(1))
self.assertIsNone(repository.get(2))