trezor: add basic "-init -trezor" test
Verify that the Trezor feature flag is set after "-init -trezor".
This commit is contained in:
parent
c6f6e8ec4d
commit
4bf02f4760
44
tests/trezor/trezor_test.go
Normal file
44
tests/trezor/trezor_test.go
Normal file
@ -0,0 +1,44 @@
|
||||
package trezor
|
||||
|
||||
// Test operations with "-trezor".
|
||||
// See also the "cli" package - the tests there are very similar.
|
||||
|
||||
import (
|
||||
"os/exec"
|
||||
"runtime"
|
||||
"testing"
|
||||
|
||||
"github.com/rfjakob/gocryptfs/internal/configfile"
|
||||
|
||||
"github.com/rfjakob/gocryptfs/tests/test_helpers"
|
||||
)
|
||||
|
||||
func isTrezorConnected() bool {
|
||||
if runtime.GOOS != "linux" {
|
||||
return false
|
||||
}
|
||||
c := exec.Command("lsusb", "-d", "534c:0001")
|
||||
err := c.Run()
|
||||
if err != nil {
|
||||
return false
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
||||
// Test -init with -trezor
|
||||
func TestInitTrezor(t *testing.T) {
|
||||
if !isTrezorConnected() {
|
||||
t.Skip("No Trezor device connected")
|
||||
}
|
||||
t.Log("Trying gocryptfs -init -trezor ...")
|
||||
// vvvvvvvvvvvvv disable -extpass
|
||||
dir := test_helpers.InitFS(t, "-trezor", "-extpass", "")
|
||||
// The freshly created config file should have the Trezor feature flag set.
|
||||
_, c, err := configfile.LoadConfFile(dir+"/"+configfile.ConfDefaultName, nil)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if !c.IsFeatureFlagSet(configfile.FlagTrezor) {
|
||||
t.Error("Trezor flag should be set but is not")
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user