chore: `UpdateKeycardUID` function exposed
This commit is contained in:
parent
e4ca8a256c
commit
698c32f3e3
|
@ -196,6 +196,7 @@ func TestKeypairs(t *testing.T) {
|
||||||
db, stop := setupTestDB(t)
|
db, stop := setupTestDB(t)
|
||||||
defer stop()
|
defer stop()
|
||||||
|
|
||||||
|
keycardUID := "00000000000000000000000000000000"
|
||||||
keyPair1 := keypairs.KeyPair{
|
keyPair1 := keypairs.KeyPair{
|
||||||
KeycardUID: "00000000000000000000000000000001",
|
KeycardUID: "00000000000000000000000000000001",
|
||||||
KeycardName: "Card01",
|
KeycardName: "Card01",
|
||||||
|
@ -270,8 +271,12 @@ func TestKeypairs(t *testing.T) {
|
||||||
}
|
}
|
||||||
require.Equal(t, true, locked)
|
require.Equal(t, true, locked)
|
||||||
|
|
||||||
|
// Test update keycard uid
|
||||||
|
err = db.UpdateKeycardUID(keyPair1.KeycardUID, keycardUID)
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
// Test unlocking a locked keycard
|
// Test unlocking a locked keycard
|
||||||
err = db.KeycardUnlocked(keyPair1.KeycardUID)
|
err = db.KeycardUnlocked(keycardUID)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
rows, err = db.GetAllMigratedKeyPairs()
|
rows, err = db.GetAllMigratedKeyPairs()
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
@ -284,7 +289,7 @@ func TestKeypairs(t *testing.T) {
|
||||||
require.Equal(t, false, locked)
|
require.Equal(t, false, locked)
|
||||||
|
|
||||||
// Test detleting a keycard
|
// Test detleting a keycard
|
||||||
err = db.DeleteKeycard(keyPair1.KeycardUID)
|
err = db.DeleteKeycard(keycardUID)
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
rows, err = db.GetAllMigratedKeyPairs()
|
rows, err = db.GetAllMigratedKeyPairs()
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
|
@ -2,6 +2,7 @@ package keypairs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"database/sql"
|
"database/sql"
|
||||||
|
"fmt"
|
||||||
|
|
||||||
"github.com/status-im/status-go/eth-node/types"
|
"github.com/status-im/status-go/eth-node/types"
|
||||||
)
|
)
|
||||||
|
@ -161,31 +162,32 @@ func (kp *KeyPairs) SetKeycardName(kcUID string, kpName string) (err error) {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (kp *KeyPairs) updateKeycardLocked(kcUID string, locked bool) (err error) {
|
func (kp *KeyPairs) execUpdateQuery(kcUID string, field string, value interface{}) (err error) {
|
||||||
update, err := kp.db.Prepare(`
|
var sql string
|
||||||
UPDATE
|
sql = fmt.Sprintf(`UPDATE keypairs SET %s = ? WHERE keycard_uid = ?`, field)
|
||||||
keypairs
|
|
||||||
SET
|
update, err := kp.db.Prepare(sql)
|
||||||
keycard_locked = ?
|
|
||||||
WHERE
|
|
||||||
keycard_uid = ?
|
|
||||||
`)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
defer update.Close()
|
defer update.Close()
|
||||||
|
|
||||||
_, err = update.Exec(locked, kcUID)
|
_, err = update.Exec(value, kcUID)
|
||||||
|
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (kp *KeyPairs) KeycardLocked(kcUID string) (err error) {
|
func (kp *KeyPairs) KeycardLocked(kcUID string) (err error) {
|
||||||
return kp.updateKeycardLocked(kcUID, true)
|
return kp.execUpdateQuery(kcUID, "keycard_locked", true)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (kp *KeyPairs) KeycardUnlocked(kcUID string) (err error) {
|
func (kp *KeyPairs) KeycardUnlocked(kcUID string) (err error) {
|
||||||
return kp.updateKeycardLocked(kcUID, false)
|
return kp.execUpdateQuery(kcUID, "keycard_locked", false)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (kp *KeyPairs) UpdateKeycardUID(oldKcUID string, newKcUID string) (err error) {
|
||||||
|
return kp.execUpdateQuery(oldKcUID, "keycard_uid", newKcUID)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (kp *KeyPairs) DeleteKeycard(kcUID string) (err error) {
|
func (kp *KeyPairs) DeleteKeycard(kcUID string) (err error) {
|
||||||
|
|
|
@ -350,3 +350,7 @@ func (api *API) KeycardUnlocked(ctx context.Context, kcUID string) error {
|
||||||
func (api *API) DeleteKeycard(ctx context.Context, kcUID string) error {
|
func (api *API) DeleteKeycard(ctx context.Context, kcUID string) error {
|
||||||
return api.db.DeleteKeycard(kcUID)
|
return api.db.DeleteKeycard(kcUID)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (api *API) UpdateKeycardUID(ctx context.Context, oldKcUID string, newKcUID string) error {
|
||||||
|
return api.db.UpdateKeycardUID(oldKcUID, newKcUID)
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue