Я работаю над юнит-тестами в проекте Go, и я новичок в Go.Итак, для начала я хотел проверить что-то легкое.И я начал с этой функции:
func (this *Service) InList(idPerson string, personsId []string) bool {
for _, personsId := range personsId {
if id == idPerson {
return true
}
}
return false
}
Служба - это структура, определенная поверх класса.
Это тест, который я написал:
func TestValidatePersonID(t *testing.T) {
personID := "12345"
personIDs := []string{"12345", "123456t", "1234567a"}
ok := *Service.InList(personID, personIDs)
if !ok {
t.Errorf("Id %v not found", personID)
}
}
Еслия пытаюсь вызвать службу без * Я получаю сообщение об ошибке:
недопустимое выражение метода (требуется получение указателя)
Если я пытаюсь вызвать функцию (* Service).inList, он говорит, что мне не хватает аргумента.Я новичок в Go, если кто-то может указать мне, что я делаю неправильно и как я могу получить указатель получателя этой службы в моем тесте ?.Я был бы признателен за это.