Skip to content

Commit

Permalink
tests: to favorite an image feature
Browse files Browse the repository at this point in the history
  • Loading branch information
thigazzz committed May 24, 2024
1 parent 9015259 commit 199f17e
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 7 deletions.
20 changes: 15 additions & 5 deletions pinsuggest/album.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,10 @@ def get_images(self):
image_src = images[random_index].find(id="src")
image_list.append(
Image(
id=randint(1, 100),
title=image_name,
link_to=image_src,
topic=self.topic,
randint(1, 100),
image_name,
image_src,
self.topic,
)
)

Expand Down Expand Up @@ -74,4 +74,14 @@ def has_different_images_comparing_another_list(self, new_images, old_images):
return True

def set_quantity_of_images(self, number):
self._quantity_of_images = number
self._quantity_of_images = number

def favorite_image(self, image):
if image.get_is_favorited() == True:
return None
image.favorite()
def unfavorite_image(self, image):
if image.get_is_favorited() == False:
return None
image.unfavorite()

20 changes: 18 additions & 2 deletions pinsuggest/image.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
from collections import namedtuple
from dataclasses import dataclass, field

Image = namedtuple("Image", "id,title,link_to,topic")
from pinsuggest.topic import Topic

@dataclass
class Image:
id: int
title: str
link_to: str
topic: Topic
_is_favorited: bool = False

def favorite(self):
self._is_favorited = True
def unfavorite(self):
self._is_favorited = False

def get_is_favorited(self):
return self._is_favorited
28 changes: 28 additions & 0 deletions tests/test_album.py
Original file line number Diff line number Diff line change
Expand Up @@ -104,3 +104,31 @@ def test_detect_repeated_images_between_older_and_newer_images():
)

assert is_diff_image_list == False

def test_favorite_and_image():
album = Album(topic=Topic(name="topic1", link="any"), quantity_of_images=5)
album.pinterest_HTML = fake_images_HTML

images = album.get_images()
album.favorite_image(images[0])

assert images[0].get_is_favorited() == True

def test_not_favorite_a_always_favorited_image():
album = Album(topic=Topic(name="topic1", link="any"), quantity_of_images=5)
album.pinterest_HTML = fake_images_HTML

images = album.get_images()
album.favorite_image(images[0])

assert album.favorite_image(images[0]) == None

def test_unfavorite_and_image():
album = Album(topic=Topic(name="topic1", link="any"), quantity_of_images=5)
album.pinterest_HTML = fake_images_HTML

images = album.get_images()
album.favorite_image(images[0])
album.unfavorite_image(images[0])

assert images[0].get_is_favorited() == False

0 comments on commit 199f17e

Please sign in to comment.