-
Notifications
You must be signed in to change notification settings - Fork 11
Проблем при тестовете с @WithMockUser #44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Здравей! Ще ти дам една бърза подсказка, т.к. не мога повече в момента :-) Имаш Това няма как да сработи, т.к. спринг тест не би могъл да знае как да превърне UserDetails-а който е създал с WithMockUser точно в ArchVizArenaUserDetails, а не например в LuchoUserDetails или нещо дружо. И... инжектира null. Затова има една друга анотация - WithUserDetails. Документацията е ето тук. Ето какво пише: "While @WithMockUser is a very convenient way to get started, it may not work in all instances. For example, it is common for applications to expect that the Authentication principal be of a specific type. " Надявам се това да помогне, ако не отвори наново issue-то. Поздрави, |
Добро утро, Лъчо! Благодаря за разясненията. Вече го разпознава, но сега изскача друг проблем- въпреки че съм задал в @beforeeach да създава юзър, който да ползвам за принципал . всеки път теста гърми, защото не го намира в базата. Ето линк към TestConfig-> https://github.com/rado-bochukov/archviz-arena/blob/main/src/test/java/com/example/archvizarena/testConfig/TestConfig.java |
Здрасти! Щом гпт-то не може да отговори, тегава работа и наистина звучи много лошо ;-) Но нека опитаме... Вече го разпознава, но сега изскача друг проблем- въпреки че съм задал в https://github.com/beforeeach да създава юзър, който да ползвам за принципал . всеки път теста гърми, защото не го намира в базата. Тук може би вината е моя, защото прибързано ти пратих не най-последната версия на документацията. Имаше едно бъгче - spring-projects/spring-security#6591 Та хората го пооправиха и сега в последната версия на документацията е записано:
Преведено, означава че би могъл да си организираш теста по следния начин:
Поздрави, |
Много, много благодарности! Развърза ми ръцете! Поздрави! |
Привет , Лъчо!
Имам проблем при интеграционните тестове!
Опитвам се да тествам създаването на Портфолио проект, про което ми е нужно да подам принципала от контролера в сървиса за да мога да го посоча като автор.
В тестовете обаче, въпреки че моквам принципал вече доста пъти ми гърми с NullPointerException че не го намира.
В секюритъ контекста съм настроил то този урл да имат достъп само юзъри, които са с роля "ARTIST" , но не мисля че това е проблема в момента.
Можеш ли да погледнеш и да разбереш от къде идва този null и как бих могъл да подам коректно принципал в тестовете.
Прилагам скрийншот . Мисля ,че по лесно ще даде представа. А линк към проекта е :->
https://github.com/rado-bochukov/archviz-arena/blob/main/src/test/java/com/example/archvizarena/web/ProjectUploadControllerTest.java
Благодаря!
The text was updated successfully, but these errors were encountered: