From c22d2e03bc5af06ce0f7d877b1efaf9b08e91d68 Mon Sep 17 00:00:00 2001 From: Ben Johnson Date: Mon, 5 May 2014 07:48:45 -0600 Subject: [PATCH] Remove 'bolt set'. This commit removes the 'set' command in the Bolt CLI. It proved to not be very useful so there's no point in keeping the extra code around. --- cmd/bolt/main.go | 8 -------- cmd/bolt/set.go | 39 --------------------------------------- cmd/bolt/set_test.go | 40 ---------------------------------------- 3 files changed, 87 deletions(-) delete mode 100644 cmd/bolt/set.go delete mode 100644 cmd/bolt/set_test.go diff --git a/cmd/bolt/main.go b/cmd/bolt/main.go index 3558500..1af2636 100644 --- a/cmd/bolt/main.go +++ b/cmd/bolt/main.go @@ -33,14 +33,6 @@ func NewApp() *cli.App { Get(path, name, key) }, }, - { - Name: "set", - Usage: "Sets a value for given key in a bucket", - Action: func(c *cli.Context) { - path, name, key, value := c.Args().Get(0), c.Args().Get(1), c.Args().Get(2), c.Args().Get(3) - Set(path, name, key, value) - }, - }, { Name: "keys", Usage: "Retrieve a list of all keys in a bucket", diff --git a/cmd/bolt/set.go b/cmd/bolt/set.go deleted file mode 100644 index f4a4696..0000000 --- a/cmd/bolt/set.go +++ /dev/null @@ -1,39 +0,0 @@ -package main - -import ( - "os" - - "github.com/boltdb/bolt" -) - -// Set sets the value for a given key in a bucket. -func Set(path, name, key, value string) { - if _, err := os.Stat(path); os.IsNotExist(err) { - fatal(err) - return - } - - db, err := bolt.Open(path, 0600) - if err != nil { - fatal(err) - return - } - defer db.Close() - - err = db.Update(func(tx *bolt.Tx) error { - - // Find bucket. - b := tx.Bucket([]byte(name)) - if b == nil { - fatalf("bucket not found: %s", name) - return nil - } - - // Set value for a given key. - return b.Put([]byte(key), []byte(value)) - }) - if err != nil { - fatal(err) - return - } -} diff --git a/cmd/bolt/set_test.go b/cmd/bolt/set_test.go deleted file mode 100644 index be07148..0000000 --- a/cmd/bolt/set_test.go +++ /dev/null @@ -1,40 +0,0 @@ -package main_test - -import ( - "testing" - - "github.com/boltdb/bolt" - . "github.com/boltdb/bolt/cmd/bolt" - "github.com/stretchr/testify/assert" -) - -// Ensure that a value can be set from the CLI. -func TestSet(t *testing.T) { - SetTestMode(true) - open(func(db *bolt.DB, path string) { - db.Update(func(tx *bolt.Tx) error { - tx.CreateBucket([]byte("widgets")) - return nil - }) - db.Close() - assert.Equal(t, "", run("set", path, "widgets", "foo", "bar")) - assert.Equal(t, "bar", run("get", path, "widgets", "foo")) - }) -} - -// Ensure that an error is reported if the database is not found. -func TestSetDBNotFound(t *testing.T) { - SetTestMode(true) - output := run("set", "no/such/db", "widgets", "foo", "bar") - assert.Equal(t, "stat no/such/db: no such file or directory", output) -} - -// Ensure that an error is reported if the bucket is not found. -func TestSetBucketNotFound(t *testing.T) { - SetTestMode(true) - open(func(db *bolt.DB, path string) { - db.Close() - output := run("set", path, "widgets", "foo", "bar") - assert.Equal(t, "bucket not found: widgets", output) - }) -}