mirror of
https://github.com/ralsina/tartrazine.git
synced 2024-11-10 13:32:24 +00:00
Update GetLanguageID to return a found boolean per code review
This commit is contained in:
parent
eb043e80a8
commit
cabfdaffc0
10
common.go
10
common.go
@ -491,11 +491,13 @@ func GetLanguageExtensions(language string) []string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// GetLanguageID returns the ID for the language. IDs are assigned by GitHub.
|
// GetLanguageID returns the ID for the language. IDs are assigned by GitHub.
|
||||||
|
// The input must be the canonical language name. Aliases are not supported.
|
||||||
//
|
//
|
||||||
// NOTE: The zero value (0) is a valid language ID, so this API has no way to
|
// NOTE: The zero value (0) is a valid language ID, so this API mimics the Go
|
||||||
// distinguish an invalid language name and a match on the language with ID 0.
|
// map API. Use the second return value to check if the language was found.
|
||||||
func GetLanguageID(language string) int {
|
func GetLanguageID(language string) (int, bool) {
|
||||||
return data.IDByLanguage[language]
|
id, ok := data.IDByLanguage[language]
|
||||||
|
return id, ok
|
||||||
}
|
}
|
||||||
|
|
||||||
// Type represent language's type. Either data, programming, markup, prose, or unknown.
|
// Type represent language's type. Either data, programming, markup, prose, or unknown.
|
||||||
|
@ -550,18 +550,20 @@ func (s *EnryTestSuite) TestGetLanguageID() {
|
|||||||
name string
|
name string
|
||||||
language string
|
language string
|
||||||
expectedID int
|
expectedID int
|
||||||
|
found bool
|
||||||
}{
|
}{
|
||||||
{name: "TestGetLanguageID_1", language: "1C Enterprise", expectedID: 0},
|
{name: "TestGetLanguageID_1", language: "1C Enterprise", expectedID: 0, found: true},
|
||||||
{name: "TestGetLanguageID_2", language: "BestLanguageEver", expectedID: 0}, // Cannot distinguish from 1C Enterprise
|
{name: "TestGetLanguageID_2", language: "BestLanguageEver", expectedID: 0, found: false},
|
||||||
{name: "TestGetLanguageID_3", language: "C++", expectedID: 43},
|
{name: "TestGetLanguageID_3", language: "C++", expectedID: 43, found: true},
|
||||||
{name: "TestGetLanguageID_5", language: "Objective-C", expectedID: 257},
|
{name: "TestGetLanguageID_5", language: "Objective-C", expectedID: 257, found: true},
|
||||||
{name: "TestGetLanguageID_6", language: "golang", expectedID: 0}, // Aliases are not supported
|
{name: "TestGetLanguageID_6", language: "golang", expectedID: 0, found: false}, // Aliases are not supported
|
||||||
{name: "TestGetLanguageID_7", language: "Go", expectedID: 132},
|
{name: "TestGetLanguageID_7", language: "Go", expectedID: 132, found: true},
|
||||||
{name: "TestGetLanguageID_8", language: "Makefile", expectedID: 220},
|
{name: "TestGetLanguageID_8", language: "Makefile", expectedID: 220, found: true},
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, test := range tests {
|
for _, test := range tests {
|
||||||
id := GetLanguageID(test.language)
|
id, found := GetLanguageID(test.language)
|
||||||
assert.Equal(s.T(), test.expectedID, id, fmt.Sprintf("%v: id = %v, expected: %v", test.name, id, test.expectedID))
|
assert.Equal(s.T(), test.expectedID, id, fmt.Sprintf("%v: id = %v, expected: %v", test.name, id, test.expectedID))
|
||||||
|
assert.Equal(s.T(), test.found, found, fmt.Sprintf("%v: found = %t, expected: %t", test.name, found, test.found))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user