55package oracle .kubernetes .operator .steps ;
66
77import static oracle .kubernetes .LogMatcher .containsInfo ;
8+ import static oracle .kubernetes .operator .ProcessingConstants .SERVER_STATE_MAP ;
89import static oracle .kubernetes .operator .logging .MessageKeys .WLS_HEALTH_READ_FAILED ;
910import static oracle .kubernetes .operator .logging .MessageKeys .WLS_HEALTH_READ_FAILED_NO_HTTPCLIENT ;
1011import static org .hamcrest .MatcherAssert .assertThat ;
1112import static org .hamcrest .Matchers .is ;
13+ import static org .hamcrest .Matchers .nullValue ;
1214
1315import com .meterware .simplestub .Memento ;
1416import com .meterware .simplestub .Stub ;
2426import java .util .logging .LogRecord ;
2527import oracle .kubernetes .TestUtils ;
2628import oracle .kubernetes .operator .ProcessingConstants ;
29+ import oracle .kubernetes .operator .helpers .DomainPresenceInfo ;
30+ import oracle .kubernetes .operator .helpers .KubernetesVersion ;
2731import oracle .kubernetes .operator .http .HttpClient ;
2832import oracle .kubernetes .operator .http .HttpClientStub ;
2933import oracle .kubernetes .operator .steps .ReadHealthStep .ReadHealthWithHttpClientStep ;
3034import oracle .kubernetes .operator .utils .WlsDomainConfigSupport ;
35+ import oracle .kubernetes .operator .work .Component ;
3136import oracle .kubernetes .operator .work .NextAction ;
3237import oracle .kubernetes .operator .work .Packet ;
3338import oracle .kubernetes .operator .work .Step ;
@@ -42,6 +47,9 @@ public class ReadHealthStepTest {
4247 WLS_HEALTH_READ_FAILED , WLS_HEALTH_READ_FAILED_NO_HTTPCLIENT
4348 };
4449
50+ private static final String NAMESPACE = "testnamespace" ;
51+ private static final String DOMAIN_UID = "domain-uid" ;
52+
4553 private static final String DOMAIN_NAME = "domain" ;
4654 private static final String ADMIN_NAME = "admin-server" ;
4755 private static final int ADMIN_PORT_NUM = 3456 ;
@@ -155,33 +163,23 @@ public void withHttpClientStep_decrementRemainingServerHealthReadInMultipleClone
155163 public void withHttpClientStep_verifyOkServerHealthAddedToPacket () {
156164 httpClientStub .withResponse (OK_RESPONSE );
157165
158- Packet packet =
159- Stub .createStub (PacketStub .class )
160- .withServerName (MANAGED_SERVER1 )
161- .withGetKeyReturnValue (httpClientStub );
162- packet .put (
163- ProcessingConstants .SERVER_HEALTH_MAP , new ConcurrentHashMap <String , ServerHealth >());
164- packet .put (ProcessingConstants .REMAINING_SERVERS_HEALTH_TO_READ , new AtomicInteger (1 ));
166+ Packet packet = createPacketForTest ();
165167
166168 withHttpClientStep .apply (packet );
167169
168170 Map <String , ServerHealth > serverHealthMap =
169171 packet .getValue (ProcessingConstants .SERVER_HEALTH_MAP );
170172 ServerHealth serverHealth = serverHealthMap .get (MANAGED_SERVER1 );
171173 assertThat (serverHealth .getOverallHealth (), is ("ok" ));
174+ Map <String , String > serverStateMap = packet .getValue (SERVER_STATE_MAP );
175+ assertThat (serverStateMap .get (MANAGED_SERVER1 ), is ("RUNNING" ));
172176 }
173177
174178 @ Test
175179 public void withHttpClientStep_verifyServerHealthForServerOverloadedAddedToPacket () {
176180 httpClientStub .withStatus (500 ).withSuccessful (false );
177181
178- Packet packet =
179- Stub .createStub (PacketStub .class )
180- .withServerName (MANAGED_SERVER1 )
181- .withGetKeyReturnValue (httpClientStub );
182- packet .put (
183- ProcessingConstants .SERVER_HEALTH_MAP , new ConcurrentHashMap <String , ServerHealth >());
184- packet .put (ProcessingConstants .REMAINING_SERVERS_HEALTH_TO_READ , new AtomicInteger (1 ));
182+ Packet packet = createPacketForTest ();
185183
186184 withHttpClientStep .apply (packet );
187185
@@ -190,27 +188,24 @@ public void withHttpClientStep_verifyServerHealthForServerOverloadedAddedToPacke
190188 ServerHealth serverHealth = serverHealthMap .get (MANAGED_SERVER1 );
191189 assertThat (
192190 serverHealth .getOverallHealth (), is (ReadHealthStep .OVERALL_HEALTH_FOR_SERVER_OVERLOADED ));
191+ Map <String , String > serverStateMap = packet .getValue (SERVER_STATE_MAP );
192+ assertThat (serverStateMap .get (MANAGED_SERVER1 ), nullValue ());
193193 }
194194
195195 @ Test
196196 public void withHttpClientStep_verifyServerHealthForOtherErrorAddedToPacket () {
197197 httpClientStub .withStatus (404 ).withSuccessful (false );
198198
199- Packet packet =
200- Stub .createStub (PacketStub .class )
201- .withServerName (MANAGED_SERVER1 )
202- .withGetKeyReturnValue (httpClientStub );
203- packet .put (
204- ProcessingConstants .SERVER_HEALTH_MAP , new ConcurrentHashMap <String , ServerHealth >());
205- packet .put (ProcessingConstants .REMAINING_SERVERS_HEALTH_TO_READ , new AtomicInteger (1 ));
206- packet .put (ProcessingConstants .SERVER_STATE_MAP , new ConcurrentHashMap <String , ServerHealth >());
199+ Packet packet = createPacketForTest ();
207200
208201 withHttpClientStep .apply (packet );
209202
210203 Map <String , ServerHealth > serverHealthMap =
211204 packet .getValue (ProcessingConstants .SERVER_HEALTH_MAP );
212205 ServerHealth serverHealth = serverHealthMap .get (MANAGED_SERVER1 );
213206 assertThat (serverHealth .getOverallHealth (), is (ReadHealthStep .OVERALL_HEALTH_NOT_AVAILABLE ));
207+ Map <String , String > serverStateMap = packet .getValue (SERVER_STATE_MAP );
208+ assertThat (serverStateMap .get (MANAGED_SERVER1 ), nullValue ());
214209 }
215210
216211 static final String OK_RESPONSE =
@@ -221,9 +216,29 @@ public void withHttpClientStep_verifyServerHealthForOtherErrorAddedToPacket() {
221216 + " \" partitionName\" : null,\n "
222217 + " \" symptoms\" : []\n "
223218 + " },\n "
219+ + " \" state\" : \" RUNNING\" ,\n "
224220 + " \" activationTime\" : 1556759105378\n "
225221 + "}" ;
226222
223+ Packet createPacketForTest () {
224+ Packet packet =
225+ Stub .createStub (PacketStub .class )
226+ .withServerName (MANAGED_SERVER1 )
227+ .withGetKeyReturnValue (httpClientStub );
228+ packet .put (
229+ ProcessingConstants .SERVER_HEALTH_MAP , new ConcurrentHashMap <String , ServerHealth >());
230+ packet .put (ProcessingConstants .REMAINING_SERVERS_HEALTH_TO_READ , new AtomicInteger (1 ));
231+ packet .put (SERVER_STATE_MAP , new ConcurrentHashMap <String , String >());
232+ packet
233+ .getComponents ()
234+ .put (
235+ ProcessingConstants .DOMAIN_COMPONENT_NAME ,
236+ Component .createFor (
237+ new DomainPresenceInfo (NAMESPACE , DOMAIN_UID ), KubernetesVersion .TEST_VERSION ));
238+
239+ return packet ;
240+ }
241+
227242 abstract static class PacketStub extends Packet {
228243
229244 String serverName ;
0 commit comments