disk_test.go 818 B

1234567891011121314151617181920212223242526272829303132
  1. package pkg
  2. import (
  3. "path/filepath"
  4. "strings"
  5. "testing"
  6. )
  7. func TestGenerateUniqueFileName(t *testing.T) {
  8. existingFilenames := make(map[string]bool)
  9. testFilename := "FullSizeRender.jpg" // what Apple calls shared files
  10. existingFilenames[strings.ToLower(testFilename)] = true
  11. a := &albumDiskInfo{
  12. FileNames: &existingFilenames,
  13. }
  14. // this is taken from downloadEntry()
  15. extension := filepath.Ext(testFilename)
  16. baseFileName := strings.TrimSuffix(filepath.Clean(filepath.Base(testFilename)), extension)
  17. for i := 0; i < 100; i++ {
  18. newFilename := a.GenerateUniqueFileName(baseFileName, extension)
  19. if strings.Contains(newFilename, "_1_2") {
  20. t.Fatalf("Filename contained _1_2")
  21. } else {
  22. // add generated name to existing files
  23. existingFilenames[strings.ToLower(newFilename)] = true
  24. }
  25. }
  26. }