mirror of
https://github.com/GopeedLab/gopeed.git
synced 2026-11-04 07:45:30 +00:00
fix: torrent file path resolve (#173)
This commit is contained in:
@@ -74,7 +74,7 @@ This project is divided into two parts, the front end uses `flutter`, the back e
|
||||
### Environment
|
||||
|
||||
1. Golang 1.19+
|
||||
2. Flutter 3.7+
|
||||
2. Flutter 3.10+
|
||||
|
||||
### Clone
|
||||
|
||||
|
||||
+1
-1
@@ -74,7 +74,7 @@ docker コンテナが起動しているときは、`http://localhost:9999` か
|
||||
### 環境
|
||||
|
||||
1. Go 言語 1.19+
|
||||
2. Flutter 3.7+
|
||||
2. Flutter 3.10+
|
||||
|
||||
### クローン
|
||||
|
||||
|
||||
+1
-1
@@ -74,7 +74,7 @@ docker-compose up -d
|
||||
### 环境要求
|
||||
|
||||
1. Golang 1.19+
|
||||
2. Flutter 3.7+
|
||||
2. Flutter 3.10+
|
||||
|
||||
### 克隆项目
|
||||
|
||||
|
||||
+3
-6
@@ -10,12 +10,9 @@ const FileSchema = "FILE"
|
||||
|
||||
func ParseSchema(url string) string {
|
||||
index := strings.Index(url, ":")
|
||||
if index == -1 {
|
||||
// check is file path
|
||||
if IsExistsFile(url) {
|
||||
return FileSchema
|
||||
}
|
||||
return ""
|
||||
// if no schema or windows path like C:\a.txt, return FILE
|
||||
if index == -1 || index == 1 {
|
||||
return FileSchema
|
||||
}
|
||||
schema := url[:index]
|
||||
if schema == "data" {
|
||||
|
||||
@@ -36,13 +36,6 @@ func TestParseSchema(t *testing.T) {
|
||||
},
|
||||
want: "FILE",
|
||||
},
|
||||
{
|
||||
name: "file-not-exists",
|
||||
args: args{
|
||||
url: "not.txt",
|
||||
},
|
||||
want: "",
|
||||
},
|
||||
{
|
||||
name: "file-no-scheme",
|
||||
args: args{
|
||||
@@ -57,6 +50,13 @@ func TestParseSchema(t *testing.T) {
|
||||
},
|
||||
want: "APPLICATION/X-BITTORRENT",
|
||||
},
|
||||
{
|
||||
name: "windows-path",
|
||||
args: args{
|
||||
url: "D:\\bt.torrent",
|
||||
},
|
||||
want: "FILE",
|
||||
},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
|
||||
Reference in New Issue
Block a user