Fixed GetExpandedFilename()

This commit is contained in:
Michael Mayer 2018-02-27 19:51:52 +01:00
parent 6f8d5cdd83
commit f34176c2eb
4 changed files with 28 additions and 28 deletions

View file

@ -21,7 +21,7 @@ func main() {
Name: "config",
Usage: "Displays global configuration values",
Action: func(c *cli.Context) error {
config.SetValuesFromFile(photoprism.getExpandedFilename(c.GlobalString("config-file")))
config.SetValuesFromFile(photoprism.GetExpandedFilename(c.GlobalString("config-file")))
config.SetValuesFromCliContext(c)
@ -47,7 +47,7 @@ func main() {
},
},
Action: func(c *cli.Context) error {
config.SetValuesFromFile(photoprism.getExpandedFilename(c.GlobalString("config-file")))
config.SetValuesFromFile(photoprism.GetExpandedFilename(c.GlobalString("config-file")))
config.SetValuesFromCliContext(c)

View file

@ -28,23 +28,23 @@ func (c *Config) SetValuesFromFile(fileName string) error {
c.ConfigFile = fileName
if OriginalsPath, err := yamlConfig.Get("originals-path"); err == nil {
c.OriginalsPath = getExpandedFilename(OriginalsPath)
c.OriginalsPath = GetExpandedFilename(OriginalsPath)
}
if ThumbnailsPath, err := yamlConfig.Get("thumbnails-path"); err == nil {
c.ThumbnailsPath = getExpandedFilename(ThumbnailsPath)
c.ThumbnailsPath = GetExpandedFilename(ThumbnailsPath)
}
if ImportPath, err := yamlConfig.Get("import-path"); err == nil {
c.ImportPath = getExpandedFilename(ImportPath)
c.ImportPath = GetExpandedFilename(ImportPath)
}
if ExportPath, err := yamlConfig.Get("export-path"); err == nil {
c.ExportPath = getExpandedFilename(ExportPath)
c.ExportPath = GetExpandedFilename(ExportPath)
}
if DarktableCli, err := yamlConfig.Get("darktable-cli"); err == nil {
c.DarktableCli = getExpandedFilename(DarktableCli)
c.DarktableCli = GetExpandedFilename(DarktableCli)
}
return nil
@ -52,23 +52,23 @@ func (c *Config) SetValuesFromFile(fileName string) error {
func (c *Config) SetValuesFromCliContext(context *cli.Context) error {
if context.IsSet("originals-path") {
c.OriginalsPath = getExpandedFilename(context.String("originals-path"))
c.OriginalsPath = GetExpandedFilename(context.String("originals-path"))
}
if context.IsSet("thumbnails-path") {
c.ThumbnailsPath = getExpandedFilename(context.String("thumbnails-path"))
c.ThumbnailsPath = GetExpandedFilename(context.String("thumbnails-path"))
}
if context.IsSet("import-path") {
c.ImportPath = getExpandedFilename(context.String("import-path"))
c.ImportPath = GetExpandedFilename(context.String("import-path"))
}
if context.IsSet("export-path") {
c.ExportPath = getExpandedFilename(context.String("export-path"))
c.ExportPath = GetExpandedFilename(context.String("export-path"))
}
if context.IsSet("darktable-cli") {
c.DarktableCli = getExpandedFilename(context.String("darktable-cli"))
c.DarktableCli = GetExpandedFilename(context.String("darktable-cli"))
}
return nil

View file

@ -12,11 +12,11 @@ const testDataUrl = "https://www.dropbox.com/s/na9p9wwt98l7m5b/import.zip?dl=1"
const testDataHash = "ed3bdb2fe86ea662bc863b63e219b47b8d9a74024757007f7979887d"
var darktableCli = "/Applications/darktable.app/Contents/MacOS/darktable-cli"
var testDataZip = getExpandedFilename(testDataPath + "/import.zip")
var originalsPath = getExpandedFilename(testDataPath + "/originals")
var thumbnailsPath = getExpandedFilename(testDataPath + "/thumbnails")
var importPath = getExpandedFilename(testDataPath + "/import")
var exportPath = getExpandedFilename(testDataPath + "/export")
var testDataZip = GetExpandedFilename(testDataPath + "/import.zip")
var originalsPath = GetExpandedFilename(testDataPath + "/originals")
var thumbnailsPath = GetExpandedFilename(testDataPath + "/thumbnails")
var importPath = GetExpandedFilename(testDataPath + "/import")
var exportPath = GetExpandedFilename(testDataPath + "/export")
func (c *Config) RemoveTestData(t *testing.T) {
os.RemoveAll(c.ImportPath)
@ -79,10 +79,10 @@ func TestNewConfig(t *testing.T) {
func TestConfig_SetValuesFromFile(t *testing.T) {
c := NewConfig()
c.SetValuesFromFile(getExpandedFilename("config.example.yml"))
c.SetValuesFromFile(GetExpandedFilename("config.example.yml"))
assert.Equal(t, getExpandedFilename("photos/originals"), c.OriginalsPath)
assert.Equal(t, getExpandedFilename("photos/thumbnails"), c.ThumbnailsPath)
assert.Equal(t, getExpandedFilename("photos/import"), c.ImportPath)
assert.Equal(t, getExpandedFilename("photos/export"), c.ExportPath)
assert.Equal(t, GetExpandedFilename("photos/originals"), c.OriginalsPath)
assert.Equal(t, GetExpandedFilename("photos/thumbnails"), c.ThumbnailsPath)
assert.Equal(t, GetExpandedFilename("photos/import"), c.ImportPath)
assert.Equal(t, GetExpandedFilename("photos/export"), c.ExportPath)
}

12
util.go
View file

@ -16,12 +16,7 @@ import (
"encoding/hex"
)
func getRandomInt(min, max int) int {
rand.Seed(time.Now().Unix())
return rand.Intn(max-min) + min
}
func getExpandedFilename(filename string) string {
func GetExpandedFilename(filename string) string {
usr, _ := user.Current()
dir := usr.HomeDir
@ -34,6 +29,11 @@ func getExpandedFilename(filename string) string {
return result
}
func getRandomInt(min, max int) int {
rand.Seed(time.Now().Unix())
return rand.Intn(max-min) + min
}
func fileExists(filename string) bool {
_, err := os.Stat(filename)