mirror of
https://github.com/JanDeDobbeleer/oh-my-posh.git
synced 2025-03-05 20:49:04 -08:00
parent
9ffa132174
commit
66941ddb43
|
@ -8,7 +8,7 @@
|
||||||
"type": "session",
|
"type": "session",
|
||||||
"style": "diamond",
|
"style": "diamond",
|
||||||
"foreground": "#ffffff",
|
"foreground": "#ffffff",
|
||||||
"background": "#ffb300",
|
"background": "#a8216b",
|
||||||
"leading_diamond": "",
|
"leading_diamond": "",
|
||||||
"trailing_diamond": "",
|
"trailing_diamond": "",
|
||||||
"properties": {
|
"properties": {
|
||||||
|
@ -33,7 +33,7 @@
|
||||||
"style": "powerline",
|
"style": "powerline",
|
||||||
"powerline_symbol": "",
|
"powerline_symbol": "",
|
||||||
"foreground": "#ffffff",
|
"foreground": "#ffffff",
|
||||||
"background": "#61AFEF",
|
"background": "#ff479c",
|
||||||
"properties": {
|
"properties": {
|
||||||
"prefix": " ",
|
"prefix": " ",
|
||||||
"style": "folder"
|
"style": "folder"
|
||||||
|
@ -44,7 +44,7 @@
|
||||||
"style": "powerline",
|
"style": "powerline",
|
||||||
"powerline_symbol": "",
|
"powerline_symbol": "",
|
||||||
"foreground": "#193549",
|
"foreground": "#193549",
|
||||||
"background": "#ffeb3b",
|
"background": "#fffb38",
|
||||||
"properties": {
|
"properties": {
|
||||||
"branch_icon": "",
|
"branch_icon": "",
|
||||||
"branch_identical_icon": "≡",
|
"branch_identical_icon": "≡",
|
||||||
|
@ -60,7 +60,7 @@
|
||||||
"style": "powerline",
|
"style": "powerline",
|
||||||
"powerline_symbol": "",
|
"powerline_symbol": "",
|
||||||
"foreground": "#193549",
|
"foreground": "#193549",
|
||||||
"background": "#ffeb3b",
|
"background": "#f36943",
|
||||||
"properties": {
|
"properties": {
|
||||||
"battery_icon": "",
|
"battery_icon": "",
|
||||||
"discharging_icon": " ",
|
"discharging_icon": " ",
|
||||||
|
@ -97,13 +97,13 @@
|
||||||
"type": "exit",
|
"type": "exit",
|
||||||
"style": "diamond",
|
"style": "diamond",
|
||||||
"foreground": "#ffffff",
|
"foreground": "#ffffff",
|
||||||
"background": "#00897b",
|
"background": "#2e9599",
|
||||||
"leading_diamond": "",
|
"leading_diamond": "",
|
||||||
"trailing_diamond": "",
|
"trailing_diamond": "",
|
||||||
"properties": {
|
"properties": {
|
||||||
"display_exit_code": false,
|
"display_exit_code": false,
|
||||||
"always_enabled": true,
|
"always_enabled": true,
|
||||||
"error_color": "#e91e63",
|
"error_color": "#f1184c",
|
||||||
"color_background": true,
|
"color_background": true,
|
||||||
"prefix": "<#193549></> "
|
"prefix": "<#193549></> "
|
||||||
}
|
}
|
||||||
|
|
|
@ -83,7 +83,7 @@ func (e *engine) renderSegmentText(text string) {
|
||||||
func (e *engine) renderBlockSegments(block *Block) string {
|
func (e *engine) renderBlockSegments(block *Block) string {
|
||||||
defer e.reset()
|
defer e.reset()
|
||||||
e.activeBlock = block
|
e.activeBlock = block
|
||||||
cwd, _ := e.env.getwd()
|
cwd := e.env.getcwd()
|
||||||
for _, segment := range block.Segments {
|
for _, segment := range block.Segments {
|
||||||
if segment.hasValue(IgnoreFolders, cwd) {
|
if segment.hasValue(IgnoreFolders, cwd) {
|
||||||
continue
|
continue
|
||||||
|
|
|
@ -15,7 +15,8 @@ import (
|
||||||
|
|
||||||
type environmentInfo interface {
|
type environmentInfo interface {
|
||||||
getenv(key string) string
|
getenv(key string) string
|
||||||
getwd() (string, error)
|
getcwd() string
|
||||||
|
homeDir() string
|
||||||
hasFiles(pattern string) bool
|
hasFiles(pattern string) bool
|
||||||
getPathSeperator() string
|
getPathSeperator() string
|
||||||
getCurrentUser() (*user.User, error)
|
getCurrentUser() (*user.User, error)
|
||||||
|
@ -39,12 +40,27 @@ func (env *environment) getenv(key string) string {
|
||||||
return os.Getenv(key)
|
return os.Getenv(key)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (env *environment) getwd() (string, error) {
|
func (env *environment) getcwd() string {
|
||||||
return os.Getwd()
|
dir, err := os.Getwd()
|
||||||
|
if err != nil {
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
// on Windows, and being case sentisitive and not consistent and all, this gives silly issues
|
||||||
|
return strings.Replace(dir, "c:", "C:", 1)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (env *environment) homeDir() string {
|
||||||
|
usr, err := user.Current()
|
||||||
|
if err != nil {
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
homeDir := usr.HomeDir
|
||||||
|
// on Windows, and being case sentisitive and not consistent and all, this gives silly issues
|
||||||
|
return strings.Replace(homeDir, "c:", "C:", 1)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (env *environment) hasFiles(pattern string) bool {
|
func (env *environment) hasFiles(pattern string) bool {
|
||||||
cwd, _ := env.getwd()
|
cwd := env.getcwd()
|
||||||
pattern = cwd + env.getPathSeperator() + pattern
|
pattern = cwd + env.getPathSeperator() + pattern
|
||||||
matches, err := filepath.Glob(pattern)
|
matches, err := filepath.Glob(pattern)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -42,9 +42,9 @@ func (pt *path) string() string {
|
||||||
case Short:
|
case Short:
|
||||||
return pt.getShortPath()
|
return pt.getShortPath()
|
||||||
case Full:
|
case Full:
|
||||||
return pt.workingDir()
|
return pt.env.getcwd()
|
||||||
case Folder:
|
case Folder:
|
||||||
return base(pt.workingDir(), pt.env)
|
return base(pt.env.getcwd(), pt.env)
|
||||||
default:
|
default:
|
||||||
return fmt.Sprintf("Path style: %s is not available", style)
|
return fmt.Sprintf("Path style: %s is not available", style)
|
||||||
}
|
}
|
||||||
|
@ -56,11 +56,11 @@ func (pt *path) init(props *properties, env environmentInfo) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (pt *path) getShortPath() string {
|
func (pt *path) getShortPath() string {
|
||||||
pwd := pt.workingDir()
|
pwd := pt.env.getcwd()
|
||||||
mappedLocations := map[string]string{
|
mappedLocations := map[string]string{
|
||||||
"HKCU:": pt.props.getString(WindowsRegistryIcon, "HK:"),
|
"HKCU:": pt.props.getString(WindowsRegistryIcon, "HK:"),
|
||||||
"Microsoft.PowerShell.Core\\FileSystem::": "",
|
"Microsoft.PowerShell.Core\\FileSystem::": "",
|
||||||
pt.homeDir(): pt.props.getString(HomeIcon, "~"),
|
pt.env.homeDir(): pt.props.getString(HomeIcon, "~"),
|
||||||
}
|
}
|
||||||
for location, value := range mappedLocations {
|
for location, value := range mappedLocations {
|
||||||
if strings.HasPrefix(pwd, location) {
|
if strings.HasPrefix(pwd, location) {
|
||||||
|
@ -71,7 +71,7 @@ func (pt *path) getShortPath() string {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (pt *path) getAgnosterPath() string {
|
func (pt *path) getAgnosterPath() string {
|
||||||
pwd := pt.workingDir()
|
pwd := pt.env.getcwd()
|
||||||
buffer := new(bytes.Buffer)
|
buffer := new(bytes.Buffer)
|
||||||
buffer.WriteString(pt.rootLocation(pwd))
|
buffer.WriteString(pt.rootLocation(pwd))
|
||||||
pathDepth := pt.pathDepth(pwd)
|
pathDepth := pt.pathDepth(pwd)
|
||||||
|
@ -84,22 +84,8 @@ func (pt *path) getAgnosterPath() string {
|
||||||
return buffer.String()
|
return buffer.String()
|
||||||
}
|
}
|
||||||
|
|
||||||
func (pt *path) workingDir() string {
|
|
||||||
dir, err := pt.env.getwd()
|
|
||||||
if err != nil {
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
return dir
|
|
||||||
}
|
|
||||||
|
|
||||||
func (pt *path) homeDir() string {
|
|
||||||
// On Unix systems, $HOME comes with a trailing slash, unlike the Windows variant
|
|
||||||
home := pt.env.getenv("HOME")
|
|
||||||
return home
|
|
||||||
}
|
|
||||||
|
|
||||||
func (pt *path) inHomeDir(pwd string) bool {
|
func (pt *path) inHomeDir(pwd string) bool {
|
||||||
return strings.HasPrefix(pwd, pt.homeDir())
|
return strings.HasPrefix(pwd, pt.env.homeDir())
|
||||||
}
|
}
|
||||||
|
|
||||||
func (pt *path) rootLocation(pwd string) string {
|
func (pt *path) rootLocation(pwd string) string {
|
||||||
|
@ -124,7 +110,7 @@ func (pt *path) rootLocation(pwd string) string {
|
||||||
|
|
||||||
func (pt *path) pathDepth(pwd string) int {
|
func (pt *path) pathDepth(pwd string) int {
|
||||||
if pt.inHomeDir(pwd) {
|
if pt.inHomeDir(pwd) {
|
||||||
pwd = strings.Replace(pwd, pt.homeDir(), "root", 1)
|
pwd = strings.Replace(pwd, pt.env.homeDir(), "root", 1)
|
||||||
}
|
}
|
||||||
splitted := strings.Split(pwd, pt.env.getPathSeperator())
|
splitted := strings.Split(pwd, pt.env.getPathSeperator())
|
||||||
var validParts []string
|
var validParts []string
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"errors"
|
|
||||||
"math/rand"
|
"math/rand"
|
||||||
"os/user"
|
"os/user"
|
||||||
"testing"
|
"testing"
|
||||||
|
@ -20,9 +19,14 @@ func (env *MockedEnvironment) getenv(key string) string {
|
||||||
return args.String(0)
|
return args.String(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (env *MockedEnvironment) getwd() (string, error) {
|
func (env *MockedEnvironment) getcwd() string {
|
||||||
args := env.Called(nil)
|
args := env.Called(nil)
|
||||||
return args.String(0), args.Error(1)
|
return args.String(0)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (env *MockedEnvironment) homeDir() string {
|
||||||
|
args := env.Called(nil)
|
||||||
|
return args.String(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (env *MockedEnvironment) hasFiles(pattern string) bool {
|
func (env *MockedEnvironment) hasFiles(pattern string) bool {
|
||||||
|
@ -90,43 +94,10 @@ func (env *MockedEnvironment) getShellName() string {
|
||||||
return args.String(0)
|
return args.String(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestWorkingDir(t *testing.T) {
|
|
||||||
want := "/usr/err"
|
|
||||||
env := new(MockedEnvironment)
|
|
||||||
env.On("getwd", nil).Return(want, nil)
|
|
||||||
path := &path{
|
|
||||||
env: env,
|
|
||||||
}
|
|
||||||
got := path.workingDir()
|
|
||||||
assert.EqualValues(t, want, got)
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestWorkingDirError(t *testing.T) {
|
|
||||||
env := new(MockedEnvironment)
|
|
||||||
expectedError := errors.New("emit macho dwarf: elf header corrupted")
|
|
||||||
env.On("getwd", nil).Return("random", expectedError)
|
|
||||||
path := &path{
|
|
||||||
env: env,
|
|
||||||
}
|
|
||||||
got := path.workingDir()
|
|
||||||
assert.EqualValues(t, "", got)
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestHomeDir(t *testing.T) {
|
|
||||||
want := "/mnt/Users/Bill"
|
|
||||||
env := new(MockedEnvironment)
|
|
||||||
env.On("getenv", "HOME").Return(want)
|
|
||||||
path := &path{
|
|
||||||
env: env,
|
|
||||||
}
|
|
||||||
got := path.homeDir()
|
|
||||||
assert.EqualValues(t, want, got)
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestIsInHomeDirTrue(t *testing.T) {
|
func TestIsInHomeDirTrue(t *testing.T) {
|
||||||
home := "/home/bill"
|
home := "/home/bill"
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return(home)
|
env.On("homeDir", nil).Return(home)
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
}
|
}
|
||||||
|
@ -142,7 +113,7 @@ func TestIsInHomeDirLevelTrue(t *testing.T) {
|
||||||
pwd += "/level"
|
pwd += "/level"
|
||||||
}
|
}
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return(home)
|
env.On("homeDir", nil).Return(home)
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
}
|
}
|
||||||
|
@ -157,7 +128,7 @@ func TestRootLocationHome(t *testing.T) {
|
||||||
}
|
}
|
||||||
home := "/home/bill/"
|
home := "/home/bill/"
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return("/home/bill")
|
env.On("homeDir", nil).Return("/home/bill")
|
||||||
env.On("getPathSeperator", nil).Return("/")
|
env.On("getPathSeperator", nil).Return("/")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -172,7 +143,7 @@ func TestRootLocationOutsideHome(t *testing.T) {
|
||||||
values: map[Property]interface{}{HomeIcon: "~"},
|
values: map[Property]interface{}{HomeIcon: "~"},
|
||||||
}
|
}
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return("/home/bill")
|
env.On("homeDir", nil).Return("/home/bill")
|
||||||
env.On("getPathSeperator", nil).Return("/")
|
env.On("getPathSeperator", nil).Return("/")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -187,7 +158,7 @@ func TestRootLocationWindowsDrive(t *testing.T) {
|
||||||
values: map[Property]interface{}{HomeIcon: "~"},
|
values: map[Property]interface{}{HomeIcon: "~"},
|
||||||
}
|
}
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return("C:\\Users\\Bill")
|
env.On("homeDir", nil).Return("C:\\Users\\Bill")
|
||||||
env.On("getPathSeperator", nil).Return("\\")
|
env.On("getPathSeperator", nil).Return("\\")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -203,7 +174,7 @@ func TestRootLocationWindowsRegistry(t *testing.T) {
|
||||||
values: map[Property]interface{}{WindowsRegistryIcon: expected},
|
values: map[Property]interface{}{WindowsRegistryIcon: expected},
|
||||||
}
|
}
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return("C:\\Users\\Bill")
|
env.On("homeDir", nil).Return("C:\\Users\\Bill")
|
||||||
env.On("getPathSeperator", nil).Return("\\")
|
env.On("getPathSeperator", nil).Return("\\")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -219,7 +190,7 @@ func TestRootLocationWindowsPowerShellHome(t *testing.T) {
|
||||||
values: map[Property]interface{}{HomeIcon: expected},
|
values: map[Property]interface{}{HomeIcon: expected},
|
||||||
}
|
}
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return("C:\\Users\\Bill")
|
env.On("homeDir", nil).Return("C:\\Users\\Bill")
|
||||||
env.On("getPathSeperator", nil).Return("\\")
|
env.On("getPathSeperator", nil).Return("\\")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -234,7 +205,7 @@ func TestRootLocationWindowsPowerShellOutsideHome(t *testing.T) {
|
||||||
values: map[Property]interface{}{WindowsRegistryIcon: "REG"},
|
values: map[Property]interface{}{WindowsRegistryIcon: "REG"},
|
||||||
}
|
}
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return("C:\\Program Files\\Go")
|
env.On("homeDir", nil).Return("C:\\Program Files\\Go")
|
||||||
env.On("getPathSeperator", nil).Return("\\")
|
env.On("getPathSeperator", nil).Return("\\")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -249,7 +220,7 @@ func TestRootLocationEmptyDir(t *testing.T) {
|
||||||
values: map[Property]interface{}{WindowsRegistryIcon: "REG"},
|
values: map[Property]interface{}{WindowsRegistryIcon: "REG"},
|
||||||
}
|
}
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return("/home/bill")
|
env.On("homeDir", nil).Return("/home/bill")
|
||||||
env.On("getPathSeperator", nil).Return("/")
|
env.On("getPathSeperator", nil).Return("/")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -262,7 +233,7 @@ func TestRootLocationEmptyDir(t *testing.T) {
|
||||||
func TestIsInHomeDirFalse(t *testing.T) {
|
func TestIsInHomeDirFalse(t *testing.T) {
|
||||||
home := "/home/bill"
|
home := "/home/bill"
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return(home)
|
env.On("homeDir", nil).Return(home)
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
}
|
}
|
||||||
|
@ -274,7 +245,7 @@ func TestPathDepthInHome(t *testing.T) {
|
||||||
home := "/home/bill"
|
home := "/home/bill"
|
||||||
pwd := home
|
pwd := home
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return(home)
|
env.On("homeDir", nil).Return(home)
|
||||||
env.On("getPathSeperator", nil).Return("/")
|
env.On("getPathSeperator", nil).Return("/")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -287,7 +258,7 @@ func TestPathDepthInHomeTrailing(t *testing.T) {
|
||||||
home := "/home/bill/"
|
home := "/home/bill/"
|
||||||
pwd := home + "/"
|
pwd := home + "/"
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return(home)
|
env.On("homeDir", nil).Return(home)
|
||||||
env.On("getPathSeperator", nil).Return("/")
|
env.On("getPathSeperator", nil).Return("/")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -304,7 +275,7 @@ func TestPathDepthInHomeMultipleLevelsDeep(t *testing.T) {
|
||||||
pwd += "/level"
|
pwd += "/level"
|
||||||
}
|
}
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return(home)
|
env.On("homeDir", nil).Return(home)
|
||||||
env.On("getPathSeperator", nil).Return("/")
|
env.On("getPathSeperator", nil).Return("/")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -321,7 +292,7 @@ func TestPathDepthOutsideHomeMultipleLevelsDeep(t *testing.T) {
|
||||||
pwd += "/level"
|
pwd += "/level"
|
||||||
}
|
}
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return(home)
|
env.On("homeDir", nil).Return(home)
|
||||||
env.On("getPathSeperator", nil).Return("/")
|
env.On("getPathSeperator", nil).Return("/")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -334,7 +305,7 @@ func TestPathDepthOutsideHomeZeroLevelsDeep(t *testing.T) {
|
||||||
home := "/home/gates"
|
home := "/home/gates"
|
||||||
pwd := "/usr/"
|
pwd := "/usr/"
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return(home)
|
env.On("homeDir", nil).Return(home)
|
||||||
env.On("getPathSeperator", nil).Return("/")
|
env.On("getPathSeperator", nil).Return("/")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -347,7 +318,7 @@ func TestPathDepthOutsideHomeOneLevelDeep(t *testing.T) {
|
||||||
home := "/home/gates"
|
home := "/home/gates"
|
||||||
pwd := "/usr/location"
|
pwd := "/usr/location"
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return(home)
|
env.On("homeDir", nil).Return(home)
|
||||||
env.On("getPathSeperator", nil).Return("/")
|
env.On("getPathSeperator", nil).Return("/")
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
|
@ -365,9 +336,9 @@ func testWritePathInfo(home string, pwd string, pathSeparator string) string {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
env := new(MockedEnvironment)
|
env := new(MockedEnvironment)
|
||||||
env.On("getenv", "HOME").Return(home)
|
env.On("homeDir", nil).Return(home)
|
||||||
env.On("getPathSeperator", nil).Return(pathSeparator)
|
env.On("getPathSeperator", nil).Return(pathSeparator)
|
||||||
env.On("getwd", nil).Return(pwd, nil)
|
env.On("getcwd", nil).Return(pwd)
|
||||||
path := &path{
|
path := &path{
|
||||||
env: env,
|
env: env,
|
||||||
props: props,
|
props: props,
|
||||||
|
|
Loading…
Reference in a new issue