package clean import ( "testing" "github.com/stretchr/testify/assert" "github.com/photoprism/photoprism/pkg/txt/clip" ) func TestLog(t *testing.T) { t.Run("TheQuickBrownFox", func(t *testing.T) { assert.Equal(t, "'The quick brown fox.'", Log("The quick brown fox.")) }) t.Run("FilenameTxt", func(t *testing.T) { assert.Equal(t, "filename.txt", Log("filename.txt")) }) t.Run("EmptyString", func(t *testing.T) { assert.Equal(t, "''", Log("")) }) t.Run("Replace", func(t *testing.T) { assert.Equal(t, "?", Log("${https://:/}")) }) t.Run("Ldap", func(t *testing.T) { assert.Equal(t, "?", Log("User-Agent: {jndi:ldap://:/}")) }) t.Run("SpecialChars", func(t *testing.T) { assert.Equal(t, "' The ?quick? ''brown \"fox. '", Log(" The \n\r ''brown \"fox. \t ")) }) t.Run("LoremIpsum", func(t *testing.T) { assert.Equal(t, "'It is a long established fact that a reader will be distracted by the readable "+ "content of a pagewhen looking at its layout. The point of using Lorem Ipsum is that it has a "+ "more-or-less normal distribution of letters,as opposed to using 'Content here, content here', making it "+ "look like readable English.Many desktop publishing packages and web page editors now use Lorem Ipsum as "+ "their default model text, and a search for'lorem ipsum' will uncover many web sites still in their "+ "infancy. Various versions…'", Log(clip.LoremIpsum)) }) } func TestLogQuote(t *testing.T) { t.Run("TheQuickBrownFox", func(t *testing.T) { assert.Equal(t, "'The quick brown fox.'", LogQuote("The quick brown fox.")) }) t.Run("SpecialChars", func(t *testing.T) { assert.Equal(t, "'?The quick brown fox'", LogQuote("$The quick brown fox")) }) } func TestLogLower(t *testing.T) { t.Run("TheQuickBrownFox", func(t *testing.T) { assert.Equal(t, "'the quick brown fox.'", LogLower("The quick brown fox.")) }) t.Run("FilenameTxt", func(t *testing.T) { assert.Equal(t, "filename.txt", LogLower("filename.TXT")) }) t.Run("EmptyString", func(t *testing.T) { assert.Equal(t, "''", LogLower("")) }) t.Run("Replace", func(t *testing.T) { assert.Equal(t, "?", LogLower("${https://:/}")) }) t.Run("Ldap", func(t *testing.T) { assert.Equal(t, "?", LogLower("User-Agent: ${jndi:ldap://:/}")) }) }