Size: a a a

2020 July 16

А

Александр in pro.jvm
всем привет! помогите плз с Mockito
сервис на чистой java без спринга
есть класс где в конструкторе инжектится финальный класс (условно - конфиг)
и в этом же конструкторе создается экземпляр другого нужно класса

при тестировании получается я могу либо
@Mock
InjectableClass injectableClass
@InjectMock
TargetClass targetClass
но тогда падаю с NPE тк нет класса-конфига

либо
TargetClass targetClass = new TargetClass(finalConfigClass)
но тогда не могу использовать verify(injectableClass, times(1)).method
поскольку у меня не mock

если попытаться
@Mock
FinalConfigClass finalConfigClass
то Junit (или Mockito?) ругается что final class не может быть mock

как быть? куды бечь?
источник

AC

Andrei Chugunov in pro.jvm
можно сконфигурировать мокито так чтобы он мокал финальные классы
источник

А

Александр in pro.jvm
Andrei Chugunov
можно сконфигурировать мокито так чтобы он мокал финальные классы
через рефлексию поди?
источник

S

Stallove in pro.jvm
если надо final class замокать почитай про power mock
источник

А

Александр in pro.jvm
Stallove
если надо final class замокать почитай про power mock
да не, не хочу я power mock и рефлексию тоже
я думал может есть воркараунд типа динамически запихать в new класс mock другого класса
источник

А

Александр in pro.jvm
как если бы вот так работало

@Mock
InjectableClass injectableClass
@InjectMocks
TargetClass targetClass = new TargetClass(finalConfigClass);
источник

D

Dima in pro.jvm
yegor256
You need a place to host your private Java artifacts (or Rubygems, NuGet, Docker, Npm, etc.)? You can use Artifactory or Nexus, but you will most likely have to pay for them. Instead, check Artipie (I'm one of its developers and it's open source). It's in beta-testing mode now and it's free for everybody. You heard it right: you can host your private artifacts for free! However, it's for good people only. To get an account there you have to come to our chat and ask for access: @artipie
огонь
источник

А

Александр in pro.jvm
Dima
огонь
а разве Artifactory бесплатной не сделали?
источник

А

Александр in pro.jvm
но у нее видимо есть "фатальный недостаток" )))
источник

y

yegor256 in pro.jvm
Александр
а разве Artifactory бесплатной не сделали?
для private артифактов? я не слышал о таком.
источник

AA

Anton Arhipov in pro.jvm
Александр
а разве Artifactory бесплатной не сделали?
Он бесплатный для мавен репозиториев и просто для бинарных файлов. Всё остальное вроде под лицензией
источник

AA

Anton Arhipov in pro.jvm
источник

AK

Andrey Kuleshov in pro.jvm
yegor256
You need a place to host your private Java artifacts (or Rubygems, NuGet, Docker, Npm, etc.)? You can use Artifactory or Nexus, but you will most likely have to pay for them. Instead, check Artipie (I'm one of its developers and it's open source). It's in beta-testing mode now and it's free for everybody. You heard it right: you can host your private artifacts for free! However, it's for good people only. To get an account there you have to come to our chat and ask for access: @artipie
Отличная штуковина, выложил туда свой проект, пока полёт нормальный. Но интерфейс страдает пока,  ещё нужно делать юзер френдли. Так как сейчас - очень сырой.
источник

͏

͏͏͏͏ in pro.jvm
туркменистан?
источник

ES

Eduard Stepanyan in pro.jvm
Ребят, вопрос такой: как надо разграничить бек и фронт в проекте в GitHub? Создать две отдельные папки backend и frontend, если да, то какой командой в терминале пользоваться, а то я не совсем понимаю, как создавать чисто две папки и кинуть туда фронт и бек
источник

͏

͏͏͏͏ in pro.jvm
mkdir back
mkdir front
источник

͏

͏͏͏͏ in pro.jvm
???
источник

VK

Vladislav Kartashov in pro.jvm
Eduard Stepanyan
Ребят, вопрос такой: как надо разграничить бек и фронт в проекте в GitHub? Создать две отдельные папки backend и frontend, если да, то какой командой в терминале пользоваться, а то я не совсем понимаю, как создавать чисто две папки и кинуть туда фронт и бек
Один репозиторий - одно приложение?
источник

ES

Eduard Stepanyan in pro.jvm
Vladislav Kartashov
Один репозиторий - одно приложение?
Да
источник

h

humanoid in pro.jvm
Eduard Stepanyan
Ребят, вопрос такой: как надо разграничить бек и фронт в проекте в GitHub? Создать две отдельные папки backend и frontend, если да, то какой командой в терминале пользоваться, а то я не совсем понимаю, как создавать чисто две папки и кинуть туда фронт и бек
Изучить Git
источник