170 похожих чатов

Всем привет! У меня возник вопрос по архитектуре Есть несколько структур,

которые лежать в одном пакете

// managers/transasctions.go
type TransactionsManager struct {
encryptor *utils.Encryptor
logger log.Logger
ownersManager *OnwersManager
transactionsRepository *repositories.TransactionsRepository
resendsRepository *repositories.resendsRepository
networksRepository *repositories.NetworksRepository
nodeRpcFactory *services.NodeRpcFactory
nodeAbiFactory *services.NodeAbiFactory
}

// managers/owners.go
type OwnersManager struct {
ownersRepository *repositories.OwnersRepository
networksRepository *repositories.NetworksRepository
encryptor *utils.Encryptor
owners []*models.Owner
}

я хочу для них написать тесты, а следовательно, надо замокать все репозитории, которые есть
вот вопрос, куда пихать интерфейсы со всеми нужными методами. вот мои варики

1) в каждом файле создавать свои интерфейсы, но т.к. файлы лежат в одном пакете, то хз, как их именовать
2) создать файл managers/interfaces.go и там заинитить все интерфейсы
3) создать отдельно пакет interfaces/managers.go, interfaces/repositories.go

что бы вы посоветовали?

7 ответов

14 просмотров

я посоветовал бы распилить "менеджеры" на юзкейсы и сделать каждому частный набор зависимостей-интрефейсов

Степан- Автор вопроса
Владимир Гришин
я посоветовал бы распилить "менеджеры" на юзкейсы ...

ладно, если не переиливать на юзкейсы, то чтобы посоветовали?

Степан
ладно, если не переиливать на юзкейсы, то чтобы по...

если много пересечений, то 2. если пересечений не очень много, то 1

Степан- Автор вопроса
Владимир Гришин
если много пересечений, то 2. если пересечений не ...

пересечений много одни и те же репы юзаются в нескольких менеджерах

Степан- Автор вопроса
Andrey Chernov
как это мешает?

если первый вариант использовать, то я хз, как назвать интерфейсы для каждого мендежра, тк они находятся в другом пакете

Похожие вопросы

Обсуждают сегодня

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Мужики. привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных элементов...
Kraszx
2
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Всем привет! Кто пользуется DevExpress, подскажите пожалуйста, реализован ли в TcxGrid в новых версиях поиск по датам как в Экселе (ну т.е. не просто список чекбоксов со значе...
A Z
4
Карта сайта