Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    Piotr Pęczek
    @ppeczek
    ale obecnie mozesz sobie zdefiniowac w devsettings.py ustawienia bazy danych
    Kamil Moczydłowski
    @fsdevio
    Cannot load settings from module politikon.devsettings due to exception:
    'POSTGRES_PORT_5432_TCP_ADDR'
    Kamil Moczydłowski
    @fsdevio
    po podmianie DATABASE_URL = 'sqlite:///home/kamil/PycharmProjects/politikon.db' jest błąd django.db.utils.OperationalError: unable to open database file . Z stawianiem postgresa nie będę kombinował, jakieś dzikie ustawienia daliście.
    Piotr Pęczek
    @ppeczek
    dobra
    zeby to zrobic:
    ifconfig
    spisujesz url dockera do Project Interpretera
    Wojciech Zając
    @WojtekReu
    POSTGRES_PORT_5432_TCP_ADDR=172.17.0.2
    POSTGRES_NAME=/politikon_instance/postgres
    POSTGRES_PORT=tcp://172.17.0.2:5432
    POSTGRES_PORT_5432_TCP=tcp://172.17.0.2:5432
    POSTGRES_PORT_5432_TCP_ADDR=172.17.0.2
    POSTGRES_PORT_5432_TCP_PORT=5432
    POSTGRES_PORT_5432_TCP_PROTO=tcp
    używamy dwóch obrazów dockera: politikon_instance i politikon_db
    Wojciech Zając
    @WojtekReu
    Chyba lepiej będzie spotkać się i omówić to konfigurację.
    Ja dotychczas w PyCharm używałem konfiguracji: remote; ssh
    Oczywiście na dockerze miałem zainstalowany i skonfigurowany sshd z kluczem.
    Kamil Moczydłowski
    @fsdevio
    Udało mi się skonfigurować Pycharma uruchamiania testów przez ssh, tyle mi wystarczy, resztę mogę działać w konsoli, ale fajnie byłoby, jakby ktoś wiedział, jak ustawić Django Console.
    @WojtekReu Dzięki, tym pomysłem z ssh uratowałeś mi tyłek :)
    Piotr Pęczek
    @ppeczek
    Woooo
    Dzięki, @Kamil-Moczydlowski za fix
    Kamil Moczydłowski
    @fsdevio
    @ppeczek Spoko, testy to moja specjalność :) Chciałbym dołączyć biblitekę https://pypi.python.org/pypi/mock do projektu, dzięki niej uda się wbić 100% coverage. Nie będzie z tym problemu ?
    Piotr Pęczek
    @ppeczek
    Nie będzie ;]
    Kamil Moczydłowski
    @fsdevio
    Testy, które piszecie, to mają być unit testy czy integracyjne ? W repo jest pomieszanie dwóch rodzajów.
    Piotr Pęczek
    @ppeczek
    No właśnie wydaje mi się że się z @WojtekReu nie dogadaliśmy.
    Jednak powinny być i te i te. Tylko nie wiem jak je w plikach podzielić
    Kamil Moczydłowski
    @fsdevio
    Normalnie na 2 pliki w folderze /tests
    Po wrzuceniu init.py do folderu django je wykryje bez problemów.
    A czy testy funkcyjne na selenium miałyby sens ?
    Kamil Moczydłowski
    @fsdevio
    Tak myślę, że obecnie rozdzielanie testów po typie nie miałoby sensu, trzeba byłobynapisać unit test do każdej funkcji/mteody. W kolejnym projekcie będzie lepiej :D
    Piotr Pęczek
    @ppeczek
    Dlaczego, bo najpierw się unittesty się robi?
    Ja bym to rozdzielił chociażby po to, żeby się nauczyć
    Kamil Moczydłowski
    @fsdevio
    Najpierw robi się funkcyjne, później unit, a na końcu integracyjne. Ale jak robi się unit testy na poważnie, to każda! funkcja ma unit test. Idealnie byłoby iść na pełnym TDD, ale to ma sens tylko, jeśli każdy! się do tego stosuje, ale warto, efekty są super.
    Btw to w repo mamy poważne problemy z transaction.atomic(), łapanie wyjątków nie pozwala na rollback DB, już robię fixa.
    Kamil Moczydłowski
    @fsdevio
    Niedługo będę zaczynał nowy projekt open source na pełnym TDD, duży i ciekawy :) Na nim możemy się poduczyć, ty testów, a ja wszystkiego innego. Jak się uczyć, to porządnie.
    Piotr Pęczek
    @ppeczek
    a jak stestowac partiala save_profile?
    kazda funkcja ma swoj unit test
    tam sie zdarzylo ze 2 razy jak prywatne funkcje w nadrzednych mialy testy
    http://django-social-auth.readthedocs.io/en/latest/testing_tools.html
    cos w te strone trzeba, tylko ze my korzystamy z python-social-auth, nie django-social-auth
    Kamil Moczydłowski
    @fsdevio
    po podzieleniu na kilka funkcji można bez problemu przetestować na mockach. W mockach nie sprawdza się, czy np coś się zmieniło gdzieś, tylko, czy została odpowiednio wywołana funkcja zmieniająca coś.
    Piotr Pęczek
    @ppeczek
    git
    Piotr Pęczek
    @ppeczek
    Man, youre sick
    Piotr Pęczek
    @ppeczek
    gdzie jest różnica między testami funkcyjnymi, jednostkowymi i integracyjnymi?
    Jednostkowe nie polegały na przejściu wszystkich ścieżek w funkcji?
    Piotr Pęczek
    @ppeczek
    ooo
    to ja poprawie te nasze. tylko jak wtedy z nazewnictwem?
    i jak z konwencją setup teardown?
    miałem wstawiać to, ale to za każdym testem tworzyło na nowo obiekty, co nie było satysfakcjonujące
    Kamil Moczydłowski
    @fsdevio

    Z książki http://www.goodreads.com/book/show/25447991-two-scoops-of-django, najlepsza książka o porgramowaniu, jaką kiedykolwiek przeczytałem:

    "Don't Repeat Yourself Doesn't Apply to Writing Tests
    The setUp() method is really useful for generating reusable data across all test methods in a test
    class. However, sometimes we need similar but different data between test methods, which is where
    we often fall into the trap of writing fancy test utilities. Or worse, we decide that rather than write
    20 similar tests, we can write a single method that when passed certain arguments will handle all the
    work for us.
    Our favorite method of handling these actions is to just dig in and write the same or similar code
    multiple times. In fact, we’ll quietly admit to copy/pasting code between tests to expedite our work."

    co do nazw to proponuję dodwawać _error (np test_topup_accounts_task_error) przy testowaniu wyjatku, a przy else to już zależne od tego, co w tym else jest
    Piotr Pęczek
    @ppeczek
    extra
    to tak jak myślałem
    Kamil Moczydłowski
    @fsdevio
    dlaczego w accounts/models.py, w polu email jest użyty CharField ? W Django jest przecież EmailField.
    Piotr Pęczek
    @ppeczek
    Wtedy jeszcze nie było
    Wojciech Zając
    @WojtekReu
    Zostawiam KlubJagiellonski/Politikon#148