глобальная переменная недоступна для методов при использовании с тестированием - PullRequest
0 голосов
/ 04 июня 2018

Я столкнулся с проблемой при использовании Golang Переменная Testing.Global, недоступная для методов.Ниже приведен фрагмент кода

test1.go

var map1 = make(map[string]string)

func f()(req *http.Request) (ismime bool, map1 map[string]string, err 
error) {
 map1["key"]="value"
return true,map1,nil
}

Я получаю следующие ошибки

panic: assignment to entry in nil map [recovered]

panic: assignment to entry in nil map

1 Ответ

0 голосов
/ 04 июня 2018

Судя по вашим комментариям, вы действительно не хотите скрывать глобальную переменную map1, вы просто хотите вернуть ее.

Так что вы, вероятно, хотите

func f()(req *http.Request) (bool, map[string]string, error) {
    map1["key"]="value"
    return true, map1, nil
}

Возвращение трех аргументов и глобальной переменной среди них выглядит странно.Вероятно, что-то плохо спроектировано.

...