From 967f01ade383f90019a1338585eb0ada961f16dc Mon Sep 17 00:00:00 2001 From: Dawei Huang Date: Fri, 31 Jan 2025 02:49:39 +0000 Subject: [PATCH] nonexistent test. --- gnmi_server/server_test.go | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnmi_server/server_test.go b/gnmi_server/server_test.go index 5165c79c..bd816b5f 100644 --- a/gnmi_server/server_test.go +++ b/gnmi_server/server_test.go @@ -3114,6 +3114,41 @@ func TestGNOI(t *testing.T) { } }) + t.Run("OSActivateNonExistentVersion", func(t *testing.T) { + mockClient := &ssc.DbusClient{} + expectedError := fmt.Errorf("Error: Image does not exist") + + mock := gomonkey.ApplyMethod(reflect.TypeOf(mockClient), "ActivateImage", func(_ *ssc.DbusClient, image string) error { + return expectedError + }) + defer mock.Reset() + + // Prepare context and request + ctx := context.Background() + req := &gnoi_os_pb.ActivateRequest{Version: "non_existent_version"} + osc := gnoi_os_pb.NewOSClient(conn) + + resp, err := osc.Activate(ctx, req) + if err != nil { + t.Fatalf("Expected no error but got: %v", err) + } + if resp == nil { + t.Fatalf("Expected non-nil response but got nil") + } + + if resp.GetActivateError() == nil { + t.Fatalf("Expected ActivateError in response but got none") + } + + if resp.GetActivateError().GetType() != gnoi_os_pb.ActivateError_NON_EXISTENT { + t.Errorf("Expected error type '%v' but got '%v'", gnoi_os_pb.ActivateError_NON_EXISTENT, resp.GetActivateError().GetType()) + } + + if !strings.Contains(resp.GetActivateError().GetDetail(), expectedError.Error()) { + t.Errorf("Expected error detail to contain '%v' but got '%v'", expectedError, resp.GetActivateError().GetDetail()) + } + }) + type configData struct { source string destination string