mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-09-10 13:42:02 +00:00
FakeEtcdClient should return KeyNotFound on Delete
This commit is contained in:
@@ -195,6 +195,7 @@ func TestEtcdDeleteController(t *testing.T) {
|
|||||||
fakeClient := tools.NewFakeEtcdClient(t)
|
fakeClient := tools.NewFakeEtcdClient(t)
|
||||||
registry := NewTestEtcdRegistry(fakeClient)
|
registry := NewTestEtcdRegistry(fakeClient)
|
||||||
key, _ := makeControllerKey(ctx, "foo")
|
key, _ := makeControllerKey(ctx, "foo")
|
||||||
|
fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0)
|
||||||
err := registry.DeleteController(ctx, "foo")
|
err := registry.DeleteController(ctx, "foo")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Errorf("unexpected error: %v", err)
|
t.Errorf("unexpected error: %v", err)
|
||||||
@@ -532,6 +533,11 @@ func TestEtcdDeleteService(t *testing.T) {
|
|||||||
ctx := api.NewDefaultContext()
|
ctx := api.NewDefaultContext()
|
||||||
fakeClient := tools.NewFakeEtcdClient(t)
|
fakeClient := tools.NewFakeEtcdClient(t)
|
||||||
registry := NewTestEtcdRegistry(fakeClient)
|
registry := NewTestEtcdRegistry(fakeClient)
|
||||||
|
key, _ := makeServiceKey(ctx, "foo")
|
||||||
|
fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Service{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0)
|
||||||
|
endpointsKey, _ := makeServiceEndpointsKey(ctx, "foo")
|
||||||
|
fakeClient.Set(endpointsKey, runtime.EncodeOrDie(latest.Codec, &api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "foo"}, Protocol: "TCP"}), 0)
|
||||||
|
|
||||||
err := registry.DeleteService(ctx, "foo")
|
err := registry.DeleteService(ctx, "foo")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Errorf("unexpected error: %v", err)
|
t.Errorf("unexpected error: %v", err)
|
||||||
@@ -540,13 +546,11 @@ func TestEtcdDeleteService(t *testing.T) {
|
|||||||
if len(fakeClient.DeletedKeys) != 2 {
|
if len(fakeClient.DeletedKeys) != 2 {
|
||||||
t.Errorf("Expected 2 delete, found %#v", fakeClient.DeletedKeys)
|
t.Errorf("Expected 2 delete, found %#v", fakeClient.DeletedKeys)
|
||||||
}
|
}
|
||||||
key, _ := makeServiceKey(ctx, "foo")
|
|
||||||
if fakeClient.DeletedKeys[0] != key {
|
if fakeClient.DeletedKeys[0] != key {
|
||||||
t.Errorf("Unexpected key: %s, expected %s", fakeClient.DeletedKeys[0], key)
|
t.Errorf("Unexpected key: %s, expected %s", fakeClient.DeletedKeys[0], key)
|
||||||
}
|
}
|
||||||
key, _ = makeServiceEndpointsKey(ctx, "foo")
|
if fakeClient.DeletedKeys[1] != endpointsKey {
|
||||||
if fakeClient.DeletedKeys[1] != key {
|
t.Errorf("Unexpected key: %s, expected %s", fakeClient.DeletedKeys[1], endpointsKey)
|
||||||
t.Errorf("Unexpected key: %s, expected %s", fakeClient.DeletedKeys[1], key)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -906,6 +910,9 @@ func TestEtcdDeleteMinion(t *testing.T) {
|
|||||||
ctx := api.NewContext()
|
ctx := api.NewContext()
|
||||||
fakeClient := tools.NewFakeEtcdClient(t)
|
fakeClient := tools.NewFakeEtcdClient(t)
|
||||||
registry := NewTestEtcdRegistry(fakeClient)
|
registry := NewTestEtcdRegistry(fakeClient)
|
||||||
|
key := "/registry/minions/foo"
|
||||||
|
fakeClient.Set("/registry/minions/foo", runtime.EncodeOrDie(latest.Codec, &api.Node{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0)
|
||||||
|
|
||||||
err := registry.DeleteMinion(ctx, "foo")
|
err := registry.DeleteMinion(ctx, "foo")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Errorf("unexpected error: %v", err)
|
t.Errorf("unexpected error: %v", err)
|
||||||
@@ -914,7 +921,6 @@ func TestEtcdDeleteMinion(t *testing.T) {
|
|||||||
if len(fakeClient.DeletedKeys) != 1 {
|
if len(fakeClient.DeletedKeys) != 1 {
|
||||||
t.Errorf("Expected 1 delete, found %#v", fakeClient.DeletedKeys)
|
t.Errorf("Expected 1 delete, found %#v", fakeClient.DeletedKeys)
|
||||||
}
|
}
|
||||||
key := "/registry/minions/foo"
|
|
||||||
if fakeClient.DeletedKeys[0] != key {
|
if fakeClient.DeletedKeys[0] != key {
|
||||||
t.Errorf("Unexpected key: %s, expected %s", fakeClient.DeletedKeys[0], key)
|
t.Errorf("Unexpected key: %s, expected %s", fakeClient.DeletedKeys[0], key)
|
||||||
}
|
}
|
||||||
|
@@ -624,7 +624,7 @@ func TestEtcdDelete(t *testing.T) {
|
|||||||
"notExisting": {
|
"notExisting": {
|
||||||
existing: emptyNode,
|
existing: emptyNode,
|
||||||
expect: emptyNode,
|
expect: emptyNode,
|
||||||
errOK: func(err error) bool { return err == nil },
|
errOK: func(err error) bool { return errors.IsNotFound(err) },
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -283,7 +283,13 @@ func (f *FakeEtcdClient) Delete(key string, recursive bool) (*etcd.Response, err
|
|||||||
|
|
||||||
f.Mutex.Lock()
|
f.Mutex.Lock()
|
||||||
defer f.Mutex.Unlock()
|
defer f.Mutex.Unlock()
|
||||||
existing := f.Data[key]
|
existing, ok := f.Data[key]
|
||||||
|
if !ok {
|
||||||
|
return &etcd.Response{}, &etcd.EtcdError{
|
||||||
|
ErrorCode: EtcdErrorCodeNotFound,
|
||||||
|
Index: f.ChangeIndex,
|
||||||
|
}
|
||||||
|
}
|
||||||
index := f.generateIndex()
|
index := f.generateIndex()
|
||||||
f.Data[key] = EtcdResponseWithError{
|
f.Data[key] = EtcdResponseWithError{
|
||||||
R: &etcd.Response{},
|
R: &etcd.Response{},
|
||||||
|
Reference in New Issue
Block a user