tomAIto/testy_jednostkowe.py

32 lines
1.3 KiB
Python

import unittest
from unittest.mock import patch
from detect_module import TomatoDetector
class TestTomatoDetection(unittest.TestCase):
@patch('detect_module.TomatoDetector.image_contains_tomato')
def test_no_tomato_mock(self, mock_image_contains_tomato):
# Test the app's ability to correctly identify images without tomatoes using a mock
# Configure the mock to return False, simulating the absence of a tomato
mock_image_contains_tomato.return_value = False
# Create an instance of TomatoDetector
tomato_detector = TomatoDetector()
# Call the detect_tomato method, which internally calls the mocked image_contains_tomato
result = tomato_detector.detect_tomato('path_to_no_tomato_image.jpg')
# Ensure the app correctly identifies that there is no tomato using the mocked method
self.assertFalse(result, "No tomato should be detected in the image")
def test_invalid_photo_file(self):
# Test the model ability to identify if a file is a photo or not
# Provide an file that is not a photo
image_path = 'path_to_no_tomato_image.txt'
self.assertFalse(show_image(image_path), "It should be returned that this file is not an image")
if __name__ == '__main__':
unittest.main()