e00423e2e9
Change-Id: Id3687f3346f8ec9b5da5459a57d91d1d30bf5566
105 lines
3.1 KiB
Go
105 lines
3.1 KiB
Go
// Copyright (C) 2021 Storj Labs, Inc.
|
|
// See LICENSE for copying information.
|
|
|
|
package main
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"storj.io/storj/cmd/uplink/ultest"
|
|
)
|
|
|
|
func TestRmRemote(t *testing.T) {
|
|
t.Run("Basic", func(t *testing.T) {
|
|
state := ultest.Setup(commands,
|
|
ultest.WithFile("sj://user/file1.txt"),
|
|
ultest.WithFile("sj://user/file2.txt"),
|
|
ultest.WithFile("/home/user/file1.txt"),
|
|
ultest.WithFile("/home/user/file2.txt"),
|
|
)
|
|
|
|
state.Succeed(t, "rm", "sj://user/file1.txt").RequireFiles(t,
|
|
ultest.File{Loc: "sj://user/file2.txt"},
|
|
ultest.File{Loc: "/home/user/file1.txt"},
|
|
ultest.File{Loc: "/home/user/file2.txt"},
|
|
)
|
|
})
|
|
|
|
t.Run("Recursive", func(t *testing.T) {
|
|
state := ultest.Setup(commands,
|
|
ultest.WithFile("sj://user/files/file1.txt"),
|
|
ultest.WithFile("sj://user/files/file2.txt"),
|
|
ultest.WithFile("sj://user/other_file1.txt"),
|
|
ultest.WithFile("/home/user/files/file1.txt"),
|
|
ultest.WithFile("/home/user/files/file2.txt"),
|
|
)
|
|
|
|
state.Succeed(t, "rm", "sj://user/files", "-r").RequireFiles(t,
|
|
ultest.File{Loc: "sj://user/other_file1.txt"},
|
|
ultest.File{Loc: "/home/user/files/file1.txt"},
|
|
ultest.File{Loc: "/home/user/files/file2.txt"},
|
|
)
|
|
})
|
|
|
|
t.Run("Pending", func(t *testing.T) {
|
|
state := ultest.Setup(commands,
|
|
ultest.WithPendingFile("sj://user/files/file1.txt"),
|
|
ultest.WithPendingFile("sj://user/files/file2.txt"),
|
|
ultest.WithPendingFile("sj://user/other_file1.txt"),
|
|
)
|
|
|
|
state.Succeed(t, "rm", "sj://user/files/file1.txt", "--pending").RequirePending(t,
|
|
ultest.File{Loc: "sj://user/files/file2.txt"},
|
|
ultest.File{Loc: "sj://user/other_file1.txt"},
|
|
)
|
|
})
|
|
|
|
t.Run("Pending Recursive", func(t *testing.T) {
|
|
state := ultest.Setup(commands,
|
|
ultest.WithPendingFile("sj://user/files/file1.txt"),
|
|
ultest.WithPendingFile("sj://user/files/file2.txt"),
|
|
ultest.WithPendingFile("sj://user/other_file1.txt"),
|
|
)
|
|
|
|
state.Succeed(t, "rm", "sj://user/files", "-r", "--pending").RequirePending(t,
|
|
ultest.File{Loc: "sj://user/other_file1.txt"},
|
|
)
|
|
})
|
|
}
|
|
|
|
func TestRmLocal(t *testing.T) {
|
|
t.Run("Basic", func(t *testing.T) {
|
|
state := ultest.Setup(commands,
|
|
ultest.WithFile("sj://user/file1.txt"),
|
|
ultest.WithFile("sj://user/file2.txt"),
|
|
ultest.WithFile("/home/user/file1.txt"),
|
|
ultest.WithFile("/home/user/file2.txt"),
|
|
)
|
|
|
|
state.Fail(t, "rm", "/home/user/file1.txt").RequireFiles(t,
|
|
ultest.File{Loc: "sj://user/file1.txt"},
|
|
ultest.File{Loc: "sj://user/file2.txt"},
|
|
ultest.File{Loc: "/home/user/file1.txt"},
|
|
ultest.File{Loc: "/home/user/file2.txt"},
|
|
)
|
|
})
|
|
|
|
t.Run("Recursive", func(t *testing.T) {
|
|
state := ultest.Setup(commands,
|
|
ultest.WithFile("sj://user/files/file1.txt"),
|
|
ultest.WithFile("sj://user/files/file2.txt"),
|
|
ultest.WithFile("/home/user/files/file1.txt"),
|
|
ultest.WithFile("/home/user/files/file2.txt"),
|
|
ultest.WithFile("/home/user/other_file1.txt"),
|
|
)
|
|
|
|
state.Fail(t, "rm", "/home/user/files", "-r").RequireFiles(t,
|
|
ultest.File{Loc: "sj://user/files/file1.txt"},
|
|
ultest.File{Loc: "sj://user/files/file2.txt"},
|
|
ultest.File{Loc: "/home/user/files/file1.txt"},
|
|
ultest.File{Loc: "/home/user/files/file2.txt"},
|
|
ultest.File{Loc: "/home/user/other_file1.txt"},
|
|
)
|
|
})
|
|
}
|