// Copyright 2018 The Gitea Authors. All rights reserved. // Use of this source code is governed by a MIT-style // license that can be found in the LICENSE file. package repo import ( "testing" "code.gitea.io/gitea/models" "github.com/stretchr/testify/assert" ) func TestCleanUploadName(t *testing.T) { models.PrepareTestEnv(t) var kases = map[string]string{ ".git/refs/master": "", "/root/abc": "root/abc", "./../../abc": "abc", "a/../.git": "", "a/../../../abc": "abc", "../../../acd": "acd", "../../.git/abc": "", "..\\..\\.git/abc": "..\\..\\.git/abc", "..\\../.git/abc": "", "..\\../.git": "", "abc/../def": "def", ".drone.yml": ".drone.yml", ".abc/def/.drone.yml": ".abc/def/.drone.yml", "..drone.yml.": "..drone.yml.", "..a.dotty...name...": "..a.dotty...name...", "..a.dotty../.folder../.name...": "..a.dotty../.folder../.name...", } for k, v := range kases { assert.EqualValues(t, cleanUploadFileName(k), v) } }