@@ -589,6 +589,51 @@ func TestResource_Process_APIAction_GetStreamUpstreams(t *testing.T) {
589589 topic : []string {bus .DataPlaneResponseTopic },
590590 instance : protos .GetNginxPlusInstance ([]string {}),
591591 },
592+ {
593+ name : "Test 3: Fail, No Instance" ,
594+ message : & bus.Message {
595+ Topic : bus .APIActionRequestTopic ,
596+ Data : protos .CreatAPIActionRequestNginxPlusGetHTTPServers ("test_upstream" ,
597+ protos .GetNginxOssInstance ([]string {}).GetInstanceMeta ().GetInstanceId ()),
598+ },
599+ err : errors .New ("failed to preform API action, could not find instance with ID: " +
600+ "e1374cb1-462d-3b6c-9f3b-f28332b5f10c" ),
601+ upstreams : & client.StreamUpstreams {
602+ "upstream_1" : client.StreamUpstream {
603+ Zone : "zone_1" ,
604+ Peers : []client.StreamPeer {
605+ {
606+ Server : "server_1" ,
607+ },
608+ },
609+ Zombies : 0 ,
610+ },
611+ },
612+ topic : []string {bus .DataPlaneResponseTopic },
613+ instance : inValidInstance ,
614+ },
615+ {
616+ name : "Test 4: Fail, OSS Instance" ,
617+ message : & bus.Message {
618+ Topic : bus .APIActionRequestTopic ,
619+ Data : protos .CreatAPIActionRequestNginxPlusGetHTTPServers ("test_upstream" ,
620+ protos .GetNginxOssInstance ([]string {}).GetInstanceMeta ().GetInstanceId ()),
621+ },
622+ err : errors .New ("failed to preform API action, instance is not NGINX Plus" ),
623+ upstreams : & client.StreamUpstreams {
624+ "upstream_1" : client.StreamUpstream {
625+ Zone : "zone_1" ,
626+ Peers : []client.StreamPeer {
627+ {
628+ Server : "server_1" ,
629+ },
630+ },
631+ Zombies : 0 ,
632+ },
633+ },
634+ topic : []string {bus .DataPlaneResponseTopic },
635+ instance : protos .GetNginxOssInstance ([]string {}),
636+ },
592637 }
593638
594639 for _ , test := range tests {
@@ -690,6 +735,55 @@ func TestResource_Process_APIAction_GetUpstreams(t *testing.T) {
690735 topic : []string {bus .DataPlaneResponseTopic },
691736 instance : protos .GetNginxPlusInstance ([]string {}),
692737 },
738+ {
739+ name : "Test 3: Fail, No Instance" ,
740+ message : & bus.Message {
741+ Topic : bus .APIActionRequestTopic ,
742+ Data : protos .CreatAPIActionRequestNginxPlusGetHTTPServers ("test_upstream" ,
743+ protos .GetNginxOssInstance ([]string {}).GetInstanceMeta ().GetInstanceId ()),
744+ },
745+ err : errors .New ("failed to preform API action, could not find instance with ID: " +
746+ "e1374cb1-462d-3b6c-9f3b-f28332b5f10c" ),
747+ upstreams : & client.Upstreams {
748+ "upstream_1" : client.Upstream {
749+ Zone : "zone_1" ,
750+ Peers : []client.Peer {
751+ {
752+ Server : "server_1" ,
753+ },
754+ },
755+ Queue : client.Queue {},
756+ Keepalive : 6 ,
757+ Zombies : 0 ,
758+ },
759+ },
760+ topic : []string {bus .DataPlaneResponseTopic },
761+ instance : inValidInstance ,
762+ },
763+ {
764+ name : "Test 4: Fail, OSS Instance" ,
765+ message : & bus.Message {
766+ Topic : bus .APIActionRequestTopic ,
767+ Data : protos .CreatAPIActionRequestNginxPlusGetHTTPServers ("test_upstream" ,
768+ protos .GetNginxOssInstance ([]string {}).GetInstanceMeta ().GetInstanceId ()),
769+ },
770+ err : errors .New ("failed to preform API action, instance is not NGINX Plus" ),
771+ upstreams : & client.Upstreams {
772+ "upstream_1" : client.Upstream {
773+ Zone : "zone_1" ,
774+ Peers : []client.Peer {
775+ {
776+ Server : "server_1" ,
777+ },
778+ },
779+ Queue : client.Queue {},
780+ Keepalive : 6 ,
781+ Zombies : 0 ,
782+ },
783+ },
784+ topic : []string {bus .DataPlaneResponseTopic },
785+ instance : protos .GetNginxOssInstance ([]string {}),
786+ },
693787 }
694788
695789 for _ , test := range tests {
0 commit comments