Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 144 Pomógł: 0 Dołączył: 22.03.2015 Ostrzeżenie: (0%)
|
Witam,
stworzyłem sobie serwis który chce aby rejestrował użytkownika. Chciałem przetestować metodę która weryfikuje czy użytkownik jest już w systemie, zwraca boola . Zrobiłem var_dump poprzez przeglądarkę i jak użytkownik istnieje zwraca mi jego obiekt a jeśli nie zwraca nulla. Kod serwisu :
W przeglądarce var_dump zwraca mi true a spec false.. mimo że testuje tego samego użytkownika.. wiecie może dlaczego ? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 879 Pomógł: 189 Dołączył: 14.06.2006 Skąd: Bytom Ostrzeżenie: (0%)
|
Cytat zwraca boola Cytat jak użytkownik istnieje zwraca mi jego obiekt a jeśli nie zwraca nulla Cytat zwraca mi true a spec false Możesz się zdecydować co się tak naprawdę dzieje a co ma się dziać? Jeżeli nie pokażesz testu to możemy sobie długo gdybać. |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 144 Pomógł: 0 Dołączył: 22.03.2015 Ostrzeżenie: (0%)
|
kod
jezeli skasuje tego ifa w kodzie i dam return $user to w przeglądarce daje obiekt, a jeżeli zostawie ifa daje mi boola true. Problem w tym że spec dalej false a jezeli w kodzie dam return $user daje null.. |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 879 Pomógł: 189 Dołączył: 14.06.2006 Skąd: Bytom Ostrzeżenie: (0%)
|
W RegisterTestSpec nie ustalasz co ma zwracać metoda findOneBy. Inna sprawa, że taki łańcuch zależności nie jest wskazany. Być może wystarczy dostarczać samo repozytorium, chyba, że w usłudze chcesz skorzystać z transakcji. Moim zdaniem powinieneś dostarczyć repozytorium i manedżera jako zależności.
|
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 144 Pomógł: 0 Dołączył: 22.03.2015 Ostrzeżenie: (0%)
|
Poradziłem sobie. Mam jednak takie pytanie z punktu widzenia "dobrych praktyk" Chce zapisać użytkownika do bazy.. i zastanawiam się czy w serwisie to zrobić czy w kontrolerze. A np. w serwisie nadać token do potwierdzenia takiego użytkownika hasować hasło wysłać potwierdzającego maila itd. a persist flush w controlerze.
|
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 879 Pomógł: 189 Dołączył: 14.06.2006 Skąd: Bytom Ostrzeżenie: (0%)
|
Wszystko to robisz w usłudze. Włącznie z flushem.
|
|
|
|
![]() ![]() |
|
Aktualny czas: 23.12.2025 - 21:47 |