Merge branch 'feature/anonymous-reporting'

This commit is contained in:
Jesse Duffield
2018-08-27 20:35:55 +10:00
20 changed files with 1236 additions and 21 deletions
+5
View File
@@ -327,6 +327,11 @@ func addEnglish(i18nObject *i18n.Bundle) error {
}, &i18n.Message{
ID: "CouldNotFindBinaryErr",
Other: "Could not find any binary at {{.url}}",
ID: "AnonymousReportingTitle",
Other: "Help make lazygit better",
}, &i18n.Message{
ID: "AnonymousReportingPrompt",
Other: "Would you like to enable anonymous reporting data to help improve lazygit? (enter/esc)",
},
)
}
+4 -4
View File
@@ -14,11 +14,11 @@ type Teml map[string]interface{}
type Localizer struct {
i18nLocalizer *i18n.Localizer
language string
Log *logrus.Logger
Log *logrus.Entry
}
// NewLocalizer creates a new Localizer
func NewLocalizer(log *logrus.Logger) *Localizer {
func NewLocalizer(log *logrus.Entry) *Localizer {
userLang := detectLanguage(jibber_jabber.DetectLanguage)
log.Info("language: " + userLang)
@@ -60,7 +60,7 @@ func (l *Localizer) GetLanguage() string {
}
// add translation file(s)
func addBundles(log *logrus.Logger, i18nBundle *i18n.Bundle) {
func addBundles(log *logrus.Entry, i18nBundle *i18n.Bundle) {
fs := []func(*i18n.Bundle) error{
addPolish,
addDutch,
@@ -85,7 +85,7 @@ func detectLanguage(langDetector func() (string, error)) string {
}
// setupLocalizer creates a new localizer using given userLang
func setupLocalizer(log *logrus.Logger, userLang string) *Localizer {
func setupLocalizer(log *logrus.Entry, userLang string) *Localizer {
// create a i18n bundle that can be used to add translations and other things
i18nBundle := &i18n.Bundle{DefaultLanguage: language.English}
+8 -2
View File
@@ -2,6 +2,7 @@ package i18n
import (
"fmt"
"io/ioutil"
"testing"
"github.com/nicksnyder/go-i18n/v2/i18n"
@@ -10,8 +11,13 @@ import (
"github.com/stretchr/testify/assert"
)
func getDummyLog() *logrus.Entry {
log := logrus.New()
log.Out = ioutil.Discard
return log.WithField("test", "test")
}
func TestNewLocalizer(t *testing.T) {
assert.NotNil(t, NewLocalizer(logrus.New()))
assert.NotNil(t, NewLocalizer(getDummyLog()))
}
func TestDetectLanguage(t *testing.T) {
@@ -76,6 +82,6 @@ func TestLocalizer(t *testing.T) {
}
for _, s := range scenarios {
s.test(setupLocalizer(logrus.New(), s.userLang))
s.test(setupLocalizer(getDummyLog(), s.userLang))
}
}