mirror of
https://github.com/JanDeDobbeleer/oh-my-posh.git
synced 2025-02-02 05:41:10 -08:00
parent
1ef25757d7
commit
56f4bcfd86
|
@ -22,7 +22,7 @@ type environmentInfo interface {
|
|||
hasFolder(folder string) bool
|
||||
getFileContent(file string) string
|
||||
getPathSeperator() string
|
||||
getCurrentUser() (*user.User, error)
|
||||
getCurrentUser() string
|
||||
isRunningAsRoot() bool
|
||||
getHostName() (string, error)
|
||||
getRuntimeGOOS() string
|
||||
|
@ -101,8 +101,12 @@ func (env *environment) getPathSeperator() string {
|
|||
return string(os.PathSeparator)
|
||||
}
|
||||
|
||||
func (env *environment) getCurrentUser() (*user.User, error) {
|
||||
return user.Current()
|
||||
func (env *environment) getCurrentUser() string {
|
||||
user := os.Getenv("USER")
|
||||
if user == "" {
|
||||
user = os.Getenv("USERNAME")
|
||||
}
|
||||
return user
|
||||
}
|
||||
|
||||
func (env *environment) getHostName() (string, error) {
|
||||
|
|
|
@ -2,7 +2,6 @@ package main
|
|||
|
||||
import (
|
||||
"math/rand"
|
||||
"os/user"
|
||||
"testing"
|
||||
|
||||
"github.com/distatus/battery"
|
||||
|
@ -49,9 +48,9 @@ func (env *MockedEnvironment) getPathSeperator() string {
|
|||
return args.String(0)
|
||||
}
|
||||
|
||||
func (env *MockedEnvironment) getCurrentUser() (*user.User, error) {
|
||||
func (env *MockedEnvironment) getCurrentUser() string {
|
||||
args := env.Called(nil)
|
||||
return args.Get(0).(*user.User), args.Error(1)
|
||||
return args.String(0)
|
||||
}
|
||||
|
||||
func (env *MockedEnvironment) getHostName() (string, error) {
|
||||
|
|
|
@ -61,11 +61,8 @@ func (s *session) getUserName() string {
|
|||
if !s.props.getBool(DisplayUser, true) {
|
||||
return ""
|
||||
}
|
||||
user, err := s.env.getCurrentUser()
|
||||
if err != nil {
|
||||
return "unknown"
|
||||
}
|
||||
username := strings.TrimSpace(user.Username)
|
||||
user := s.env.getCurrentUser()
|
||||
username := strings.TrimSpace(user)
|
||||
if s.env.getRuntimeGOOS() == "windows" && strings.Contains(username, "\\") {
|
||||
username = strings.Split(username, "\\")[1]
|
||||
}
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"os/user"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
|
@ -9,10 +8,7 @@ import (
|
|||
|
||||
func setupSession(userInfoSeparator string, username string, hostname string, goos string) session {
|
||||
env := new(MockedEnvironment)
|
||||
user := user.User{
|
||||
Username: username,
|
||||
}
|
||||
env.On("getCurrentUser", nil).Return(&user, nil)
|
||||
env.On("getCurrentUser", nil).Return(username)
|
||||
env.On("getHostName", nil).Return(hostname, nil)
|
||||
env.On("getRuntimeGOOS", nil).Return(goos)
|
||||
props := &properties{
|
||||
|
@ -61,3 +57,10 @@ func TestWriteOnlyHostname(t *testing.T) {
|
|||
got := s.getFormattedText()
|
||||
assert.EqualValues(t, want, got)
|
||||
}
|
||||
|
||||
func TestSession(t *testing.T) {
|
||||
s := &session{
|
||||
env: &environment{},
|
||||
}
|
||||
assert.NotEmpty(t, s.getUserName())
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue