Aktywne Wpisy

MistrzKowalski +548
Nie rozumiem dzisiejszej młodzieży i chyba nie zrozumie ( ͡° ʖ̯ ͡°) młody chłopak (26 lat) miał, dobrze płatną robotę na Mazurach (6000 zł) jako kierowca, na spluniecie od domu, 5 dni w tygodniu 8/9 godzin i koniec to k---a nie chciał się popisać przed jakimiś przyjezdnymi lachonami i pojechał po pijaku. Stracił prawko i robotę.I teraz jęczy oczywiście rodzinka, że niewinny (miał 1,2 promila) i jak można
Pokłóciłem się ze swoją dziewczyną i już nie wiem co zrobić.
Czy da się kobiecie wytłumaczyć jak rozsądnie zarządzać pieniędzmi? Wybuchła, że ja wymagam od niej, żeby oszczędzała za dużo, bo ona jest kobietą i ma potrzeby. Musimy kupić mieszkanie i mieć jak najwięcej na wkład, żeby nie płacić bankowi z-------o haraczu, a ona zaczęła staż jako lekarz, pensja 6 k i mówi, że tak ponad połowę z tego musi p-----------ć, bo jest
Czy da się kobiecie wytłumaczyć jak rozsądnie zarządzać pieniędzmi? Wybuchła, że ja wymagam od niej, żeby oszczędzała za dużo, bo ona jest kobietą i ma potrzeby. Musimy kupić mieszkanie i mieć jak najwięcej na wkład, żeby nie płacić bankowi z-------o haraczu, a ona zaczęła staż jako lekarz, pensja 6 k i mówi, że tak ponad połowę z tego musi p-----------ć, bo jest





Mam bardzo prostą metodę w klasie:
def save_to_file(self, path):try:
with open(path, 'w') as file:
file.write(json.dumps(self.data, indent=4))
except PermissionError:
print(f"no permissions to save the file in {path}")
Chcę odpalić unit test:
def test_write_to_file_without_permissions(self):d = data_getter(LoadFromFile=True, data_path='data.json')
self.assertRaises(PermissionError, d.save_to_file, 'no_permissions_to_write/data.json')
Problem jest taki, że jeżeli zostawię blok except w metodzie, to wtedy unit test go nie łapie. Jeżeli wyrzucę nowy error w bloku except, to zaliczam test, ale sam program wtedy się będzie wywalać.
W jaki sposób mogę zachować block except, żeby test case wykrywał że dostałem w ryj wyjątkiem nieobsłużonym?
save_to_filei złap go tam, gdzie wywołujesz tą metodędef testwritetofilewithoutpermissions(self, printmock)
...
printmock.assertcalled_once()
Żeby zrobić to jak człowiek printa zastąp loggiem i użyj caploga (nie wiem czy unittest wspiera), używaj pytesta
Jak dana klasa ma nie być reużywalna to dobry znak, że nie warto jej testować. Spróbój przetestować poziom wyżej, czyli funkcję/klasę, która jej używa. Często pisze
A czy zrobienie czegoś takiego ma sens, jeżeli chcę poinformować użyszkodnika gdzie nastąpił, jaki błąd, czy wypieprzyc w ogóle ten block try-catch razem z logami?
if os.access(path, os.W_OK)
cos co spowoduje np. w aplikacji desktopowej wyskoczenie okienka/wyraznego powiadomienia, ze nie udalo sie zapisac pliku, bo costam - nie ma uprawnien, sciezka zapisu nie istnieje, plik nie istnieje, gwiazdy sa zle ustawione etc. tak, zeby