
Ilya
01.05.2017
21:15:44
Всю работу с бд засовываешь в отлельный интерфейс, для теста делаешь мок и тестируешь без бд

Denis
01.05.2017
21:15:45
тут всегда ищут баланс

Ilya
01.05.2017
21:15:54
Потом уже интеграционный с бд
Согласен, зависит от цели

Google

Nikita
01.05.2017
21:18:23
не
юниты нужны
quickcheck очень дорого на интеграционных
можно конечно подменять интерфейсом на уровне db.Query
http://stackoverflow.com/questions/34228765/golang-client-for-cassandra
вот ребята тут так и делают

Ilya
01.05.2017
21:25:58
Я как раз это и предложил чуть выше

Nikita
01.05.2017
21:28:45
ага
но паралельно тесты не запустить

Denis
01.05.2017
21:31:09
пул бд :)

Nikita
01.05.2017
21:39:16
у меня кассандра
какой пул
а да

Google

Nikita
01.05.2017
21:39:27
я на себя работаю)))
у меня нет рессурсов пока на пул )
правда можно неймспейсов наделать
и самое главное, я хочу красивое решение

Aleksandr
02.05.2017
06:07:20

Vlad
02.05.2017
10:30:28
Всем доброго дня, джентмены.
Давненько я не работал с Go. Подскажите, будьте так любезны, кто и когда засетит значения в request?
Code ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
if r.Method != get {
t.Errorf("Invalid method %s", r.Method)
}
if r.URL.Path != "/projects/"+string(pid)+".json" {
t.Errorf("Invalid resource path %s", r.URL.Path)
}
if r.URL.Query().Get("include") != "trackers" {
t.Error("Missed include query param")
}
w.Write(readTestFile(t, projectFile))
}))
Точнее сказать, в параметр r

LexsZero
02.05.2017
10:31:47
тот кто будет вызывать хендлер

Vlad
02.05.2017
10:33:08
Кхм, так-с, не совсем ясно.
Для ясности - у меня этот код находится внутри func TestXXX( ...)
Не знаю, как глянуть, кто туда сетит r.
Скорее всего это делает система тестов же?
Или есть какой-то а-ля "дебагер", чтобы понять, что засетилось в переменную и кем?

LexsZero
02.05.2017
10:36:41
есть, gdb
> A Server is an HTTP server listening on a system-chosen port on the local loopback interface, for use in end-to-end HTTP tests.
видимо, запросы должны приходить из какого-то другого места
https://gist.github.com/cespare/4992458#file-myserver_test-go

Vlad
02.05.2017
10:41:44
Откуда-то они точно приходят
Веду бой с Gogland, чтобы продебажить
Но она упорно издевается надо мной.
"Cannot find packgae"

Nikita
02.05.2017
12:47:10
это реклама?

Google

Alex
02.05.2017
12:47:25
Да
Я готов заключить контракт с S7 Airlines прямо щас
И подписать его кровью
Компания S7 Airlines обязуется не писать всякую херню в чат
А я обязуюсь никогда у них не работать

Nikita
02.05.2017
12:48:29
а если я не хочу в S7?

Alex
02.05.2017
12:48:41
Хера тут кто-то быстрый

Nikita
02.05.2017
12:48:44
)))
цифровое будущее, взяли и стерли Карину

Alex
02.05.2017
12:49:04

Nikita
02.05.2017
12:49:12
Карин, а ты не боишься что мы можем удалить твои данные из баз
и тогда ты не сможешь пользоваться электронными услугами?
не сможешь покинуть страну?
не сможешь воспользоваться банкоматом ?
бум и нет карины

Vadim
02.05.2017
12:50:09

Anton
02.05.2017
12:50:44

Nikita
02.05.2017
12:52:59
)))

Aleksey
02.05.2017
13:34:19
Друзья, такой вопрос. В программу не го будет подгружаться js скрипт. Можно в программе скрыть источник откуда он загружается, чтобы не было видно в html коде?

Max
02.05.2017
13:47:52
друзья есть достойные альтернативы fineproxy ? они в последнее время очень плохо работают

Google

Stanislav
02.05.2017
16:38:17
Нужно научится работать с golang на хорошем уровне.
Хорошо обладаю питоном, вот и все исходные данные. С go до этого ничего общего не имел
Из источников нашел: https://github.com/vladimirvivien/GoBooks
Но сделать выбор трудно, хочется что-бы время было потрачено не впустую.
Собственно вопрос: что выбирать из этих книг? Может есть лучше ресурсы?
Ну и конечно же
Привет

Aleksey
02.05.2017
17:11:53
Книги Керниган "Язык программирования Go", Go in practice

Stanislav
02.05.2017
17:15:16
Огромное спасибо

m
02.05.2017
18:02:49
Подскажите, пожалуйста, как подставлять в исходный код перед его компиляций нужную строку? И как её можно задавать: как параметр командной строки или ещё как-то?

Denis
02.05.2017
18:06:27
Go build -ldflags
Там что-то было подобное
Сетит переменную во время компиляции
Ща найду

Alexander
02.05.2017
18:07:23
Кто знает тесты на знания го?

Denis
02.05.2017
18:08:55
http://stackoverflow.com/questions/11354518/golang-application-auto-build-versioning
Тут пример есть
ldflags

m
02.05.2017
18:12:32
Денис, спасибо. То что нужно!

LexsZero
02.05.2017
19:12:27

m
02.05.2017
19:51:41
а как вы делаете высококонкурентный map ? делите на части по ключу , чтобы разбить один лок на много мелких или ещё как-то?

Google

LexsZero
02.05.2017
19:52:25
RWLock? горутина-диспетчер?

m
02.05.2017
19:53:45
горутина-диспетчер станет таким же узким местом, как и единственный лок на весь map. а с RWLock как?

LexsZero
02.05.2017
19:54:59
ну если есть ассиметрия (чтения сильно больше чем записи) - рвлок может несколько облегчить жизнь

m
02.05.2017
19:55:12
ясно

Mikhail
02.05.2017
22:28:37
Привет всем, возник вопрос. Мне надо каждые n минут выполнять какое-то действие. Делаю это так:
c := time.Tick(1 * time.Minute)
for now := range c {
//code
}
Но переменная now мне не нужна совершенно. Если я её не использую, то компилятор ругается. Попробовал заменить now на _, но бесполезно. Что делать в подобных случаях? Или я что-то не так делаю?

Aleksandr
02.05.2017
22:44:19
_ = range c

Mikhail
02.05.2017
22:51:27
_ = range c
Он так тоже не хочет
https://play.golang.org/p/ciKo1PA_2O

Denis
02.05.2017
22:52:34
Ох

Aleksandr
02.05.2017
22:52:41

Mikhail
02.05.2017
22:53:40