Я пытаюсь проверить, работает ли метод в моем модульном тестировании. Как видно из приведенного ниже кода в моей ошибке, я пытаюсь сравнить мой домашний объект с моим строковым объектом, и при распечатке их обоих они, безусловно, равны друг другу. Мой вопрос заключается в том, как мне изменить мой домашний объект на строковый объект или мой строковый объект на домашний объект, чтобы пройти тест. Также, если это помогает, это также тестирование базы данных в памяти. Спасибо!
Код юнит-тестирования
from unittest import TestCase
from main import ContactApp
from database import CombinedDatabase, Home, Person, Location, Contact
class TestContactApp(TestCase):
def test_commit_data(self):
url = CombinedDatabase.construct_in_memory_url()
contact_database = CombinedDatabase(url)
contact_database.ensure_tables_exist()
session = contact_database.create_session()
home_address = Home(address='3069 U St.')
patient1 = Person(patient_name='Mike Piazza')
ContactApp.commit_data(session, str(patient1), str(home_address), '456324A', 96.4, 'USA', 'Nebraska', 'Omaha', '54229')
actual = session.query(Home).one()
actual2 = session.query(Person).one()
print(home_address, actual.address)
self.assertEqual(home_address, actual.address)
self.assertEqual(patient1, actual2.patient_name)
Ошибка
<database.Home object at 0x7fe4ae20ce48> <database.Home object at 0x7fe4ae20ce48>
#printed out objects
<database.Home object at 0x7fe4ae20ce48> != <database.Home object at 0x7fe4ae20ce48>
<database.Home object at 0x7fe4ae20ce48>
<database.Home object at 0x7fe4ae20ce48>
<Click to see difference>
Traceback (most recent call last):
File "/home/cse/Pycharmedu2019.1.1/pycharm-edu-2019.1.1/helpers/pycharm/teamcity/diff_tools.py", line 32, in _patched_equals
old(self, first, second, msg)
File "/usr/lib64/python3.6/unittest/case.py", line 829, in assertEqual
assertion_func(first, second, msg=msg)
File "/usr/lib64/python3.6/unittest/case.py", line 822, in _baseAssertEqual
raise self.failureException(msg)
AssertionError: <database.Home object at 0x7fe4ae20ce48> != '<database.Home object at 0x7fe4ae20ce48>'