Rozwój

W tym dokumencie opisujemy opis procesu rozwoju aplkacji. Ma on postać FAQ, aby utrzymywać dokument prostym.

Jak zgłosić usterkę?

Po prostu przejdź na https://github.com/watchdogpolska/feder/issues i utworz zgłoszenie.

Jak diagnozować funkcjonowanie poczty elektronicznej?

W środowisku deweloperskim wiadomości e-mail są domyślnie wypisywane na konsole w oknie serwera WWW. Jeżeli chcesz zweryfikować np. formatowanie wiadomości zaleca się wykorzystanie maildump, który możliwy jest do zainstalowania i uruchomienia poprzez:

$ pip install maildump
$ maildump

Następnie należy ponownie uruchomić serwer WWW w następujący sposób EMAIL_URL=smtp://localhost:1025/ python manage.py runserver. Wiadomości będą dostępne przez interfejs WWW pod adresem http://localhost:1080.

Jak uruchomić automatyczne testy?

Do prawidłowego uruchomienia automatycznych testów bezwzględnie wymagane jest zainstalowanie wszystkich deweloperskich pakietów. Można to osiągnąć poprzez:

$ make build

Następnie należy wywołać:

$ make test

Jak wygenerować dokumentacje?

Do prawidłowego zbudowania dokumentacji bezwzględnie wymagane jest zainstalowanie wszystkich deweloperskich pakietów. Można to osiągnąć poprzez:

$ make build

Następnie wywołać:

$ make docs

Warto zaznaczyć, że aktualna dokumentacja jest budowana automatycznie i publikowana na Read the Docs.

Jak pozyskać testowe dane?

W celu utworzenia danych testowych należy zaimportować podział terytorialny zgodnie z instrukcją biblioteki django-teryt-tree. Następnie można wykorzystać poniższy kod:

from feder.letters.factories import SendOutgoingLetterFactory
SendOutgoingLetterFactory()

Jeżeli otrzymujesz:

IntegrityError: (1062, "Duplicate entry '1' for key 'PRIMARY'")

oznacza to w bazie danych istnieją rekordy, które kolidują z istniejącymi danymi. Możesz ponownie uruchomić SendOutgoingLetterFactory(), a licznik powinien wzrosnąć, co pozwoli uniknąć kolizji, albo usuń zgromadzone dane.

Ręcznie taka procedura polega na dodaniu instytucji, potem stworzeniu monitoringu i przypisaniu do niego instytucje. Wówczas powinny istnieć także list w sprawie.

Jakie jest hasło dla automatycznie utworzonego użytkownika?

Domyślnym hasłem utworzonych Jak pozyskać testowe dane? to pass. Zostało ono określone w klasie feder.users.UserFactory.

Jak utworzyć konto administratora?

Konto administratora może zostać utworzone poprzez polecenie python manage.py creatsuperuser. Szczegółowe parametry są przedstawione na odpowiedniej podstronie dokumentacji Django.