@gogolang

Страница 1179 из 1630
Olzhas
23.06.2018
02:50:49
Done
Благодарю!

Google
Dmitry
23.06.2018
06:37:51
а обьясните за моки в тестах. вот непонимаю никак зачем для них либы отдельные городить? почему нельзя просто сделать структуру с пустыми методама подходящими под интерфейс нужного обьекта (в голанге) или отнаследоваться от нужного класса (в других языках)?

Daniel
23.06.2018
06:47:40
потому, что от некоторых моков требуется соответствующее поведение

Dmitry
23.06.2018
06:49:34
какое такое поведение? и зачем для этого нужны имено либы?

я могу взять и ручками забить поведение в мой мок обьект - что мне дают мок либы ?

Dmitry
23.06.2018
07:24:45
Ожидаемое поведение
я понимаю для чего нужны сами моки, но не понимаю для чего нужны либы для работы с ними. Почему я не могу забить ожидаемое поведение в мок руками?

Daniel
23.06.2018
07:25:45
а кто запретит-то?

Dmitry
23.06.2018
07:27:46
вы троллите меня ?

я полнял вашу мысль - то есть мок либы предоставляют механизмы для реализации типичных сценариев (т.е. грубо говоря шаблоны)?

а что еще ?

Alexander
23.06.2018
07:48:14
Более того, зачем std, если можно ожидаемое поведение запрограммировать самому?

User
23.06.2018
07:52:16
Более того, зачем std, если можно ожидаемое поведение запрограммировать самому?
Поддержу, заодно встаёт вопрос о необходимости компилятора

Google
Alexander
23.06.2018
08:06:24
Народ, я в этом чатике уже довольно давно, хотя и пишу мало, и мне очень не нравится что с ним происходит сейчас. Вместо нормальных ответов на вопросы новичков приходит какой-то, извините, высер с горой сарказма и/или абстрактными рассуждениями. Это уже давно замеченная особенность русскоязычных сообществ по программированию, которая отталкивает многих от участия и они уходят общаться на английском. Пожалуйста, следите за тем, как вы отвечаете. Перечитайте общение за последние 8-10 часов - их не много

Michael
23.06.2018
08:07:06
this is ok

Dmitry
23.06.2018
08:13:49
Поясните, что за либы для работы? Или это про конвей?
да куча их, в кажом языке для тестирования существуют эти мок либы: например https://github.com/golang/mock или https://pypi.org/project/mock/ или https://github.com/mockito/mockito

Alexander
23.06.2018
08:22:04
да куча их, в кажом языке для тестирования существуют эти мок либы: например https://github.com/golang/mock или https://pypi.org/project/mock/ или https://github.com/mockito/mockito
Моки, конечно, можно писать самому. Либы нужны, чтобы писать меньше, а получить эффект больше. Например, не только поведение имитировать, но и проверить потом сколько раз метод вызывался и с какими параметрами.

Alex
23.06.2018
08:27:35
я полнял вашу мысль - то есть мок либы предоставляют механизмы для реализации типичных сценариев (т.е. грубо говоря шаблоны)?
Например мок объекта который используется тестируемым. Если мокается метод который в оригинале отсутствует или принимает другие аргументы будет ошибка

Michael
23.06.2018
08:28:04
из обсуждаемой оперы как пример - https://golang.org/pkg/net/http/httptest/

Dmitry
23.06.2018
08:37:07
спасибо, теперь я понял

Michael
23.06.2018
08:39:49
ну, для настоящих программистов лучшая дока - это исходный код и они пишут программы прямо машинными командами, а для людей по проще есть готовые инструменты - либы

Aliaksandr
23.06.2018
10:23:07
Aliaksandr
23.06.2018
10:46:59
Можете дать ссылку на этого доброго человека? На гитхабе quicktemplate я его найти не смог
Используйте git blame или git log, чтобы узнать, кто и в каком коммите добавил xml для jetbrains

Pawel
23.06.2018
10:59:17
Лол. Эт прочему?
Красиво сказал

The
23.06.2018
11:31:52
кто может подсказать по этому репозиторию? https://github.com/golang-standards/project-layout есть такая-же структура, и не совсем понятно как это все подружить с Dockerfile

Они предлагают Dockerfile положить в папку ./build/package насколько я понял

но при сборке контейнера, он говорит package mypackage/internal/app/server: unrecognized import path "mypackage/internal/app/server" (import path does not begin with hostname)

команда которая это вызывает: /bin/sh -c go get -d -v ./...

Google
The
23.06.2018
11:34:35
сам Dockerfile FROM golang:latest WORKDIR /go/src/mypackage/ COPY ./cmd . COPY ./internal . COPY ./pkg . COPY ./vendor . RUN go get -d -v ./... RUN go install -v ./... ENV PORT=:9001 ENTRYPOINT [ "run" ] EXPOSE 9001

хотя с COPY . . в Dockerfile все ок

Altered
23.06.2018
11:54:30
Для тонкого имиджа лучше делать мультистейдж докерфайл

В первом билд. Второй на основе альпины только бинарник копирует

The
23.06.2018
12:03:09
это потом, в дальнейшем

5 минут назад как раз думал об этом

Kaspar
23.06.2018
12:06:09
А цель запаковать и запустить чужой проект? Или шаблон для себя делается?

The
23.06.2018
12:14:16
свой проект пилю

Kaspar
23.06.2018
12:15:51
Только с dep есть пример

The
23.06.2018
12:16:41
ошибка где-то в этом коде

COPY ./cmd . COPY ./internal . COPY ./pkg . COPY ./vendor .

т.е., когда меняю на COPY . .

The
23.06.2018
12:16:57
то все сразу билдится

Айнур
23.06.2018
15:26:15
Подскажите, пожалуйста, по глобальным переменным. у фреймворка gin есть тип функции HandlerFunc который в качестве аргумента принимает единственное значение gin.Context. Как мне передать второе значение этой функции, не используя глобальную переменную?

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

Oleg
23.06.2018
15:28:46
Попробуй через контексты, в мидлварь передаешь значение и потом в хэндлере его достаешь

Petr
23.06.2018
17:30:28
Такого тебя ещё не банили

Petr
23.06.2018
17:32:44
?
Троль, создаёт акки постоянно новые

Google
Kirill
23.06.2018
17:33:07
Из Украины, что ли

Admin
ERROR: S client not available

Kirill
23.06.2018
17:33:16
Там номера не оформляя брать можно

Petr
23.06.2018
17:34:03
Там номера не оформляя брать можно
Кстати обещали сделать по паспортам

Kirill
23.06.2018
17:34:17
Много чего обещали

Daniel
23.06.2018
18:11:53
Замыкание также не хотелось бы использовать, так как код получается громоздким
А надо или замыкание, или в свою структуру поле добавить

Stanislav
23.06.2018
18:12:48
mypackage ниразу не похож на нормальный импорт :)

The
23.06.2018
18:13:14
mypackage ниразу не похож на нормальный импорт :)
а как у вас импорты выглядят? со слеша начинаются, что-ли?

Daniel
23.06.2018
18:13:36
С имени сервера

The
23.06.2018
18:13:37
и где вы увидели относительные импорты?

а если репозиторий с кодом живет локально?

Daniel
23.06.2018
18:14:29
Придумать ему имя сервера

На самом деле - там не обязательно имя сервера, но go get на него рассчитывает

The
23.06.2018
18:15:23
ну т.е. директория в $GOPATH уже не модно?

go get упал в данном случае, из-за того что докер на COPY копировал содержимое папки, а не саму папку

Oleg
23.06.2018
18:16:00
А вот так делать плохо
Если можно, то хотелось бы узнать почему и как делать "хорошо". У нас большинство сервисов используют подобный подход и если есть лучше и без глобальных переменных, то хотелось бы узнать

The
23.06.2018
18:16:03
и он долбался по адресу mypackage.

Мерлин
23.06.2018
18:16:05
Замыкание также не хотелось бы использовать, так как код получается громоздким
кастомный контекст через замыкание или context.Context первое лучше

Google
Daniel
23.06.2018
18:16:22
Импорт должен быть полным, от $GPATH/src

The
23.06.2018
18:16:52
ну так он там полный

Daniel
23.06.2018
18:17:22
Я так не думаю

The
23.06.2018
18:17:55
Я так не думаю
а какой он должен быть? /usr/local/go/src/mypackeg/...?))

или о чем речь?

там все копируется в GOPATH.

и оттуда уже собирается

Мерлин
23.06.2018
18:18:54
а какой он должен быть? /usr/local/go/src/mypackeg/...?))
Берешь https://medium.com/golangspec/import-declarations-in-go-8de0fd3ae8ff И читаешь

The
23.06.2018
18:20:18
К чему вы это скинули?

Страница 1179 из 1630