Program: 114772
Project: 114772
Buggy source:
@Test(groups={"String_Node_Str"},description="String_Node_Str" + "String_Node_Str",dependsOnMethods="String_Node_Str") public void testInvokingWithAPIGoldTierApplicationGoldResourceSilver() throws Exception {
  initialize();
  Thread.sleep(THROTTLING_UNIT_TIME + THROTTLING_ADDITIONAL_WAIT_TIME);
  String swagger="String_Node_Str" + "String_Node_Str" + APIMIntegrationConstants.RESOURCE_TIER.PLUS + "String_Node_Str"+ "String_Node_Str"+ API_NAME+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ API_VERSION_1_0_0+ "String_Node_Str";
  apiPublisherClientUser1.updateResourceOfAPI(providerName,API_NAME,API_VERSION_1_0_0,swagger);
  waitForAPIDeploymentSync(providerName,API_NAME,API_VERSION_1_0_0,APIMIntegrationConstants.IS_API_EXISTS);
  apiStoreClientUser1.waitForSwaggerDocument(user.getUserName(),API_NAME,API_VERSION_1_0_0,APIMIntegrationConstants.RESOURCE_TIER.PLUS,executionMode);
  long startTime=System.currentTimeMillis();
  long currentTime;
  for (int invocationCount=1; invocationCount <= GOLD_INVOCATION_LIMIT_PER_MIN; invocationCount++) {
    currentTime=System.currentTimeMillis();
    HttpResponse invokeResponse=HttpRequestUtil.doGet(getAPIInvocationURLHttp(API_CONTEXT,API_VERSION_1_0_0) + "String_Node_Str" + API_END_POINT_METHOD,requestHeaders);
    assertEquals(invokeResponse.getResponseCode(),HTTP_RESPONSE_CODE_OK,"String_Node_Str" + invocationCount + "String_Node_Str"+ (currentTime - startTime)+ "String_Node_Str"+ "String_Node_Str");
    assertTrue(invokeResponse.getData().contains(API_RESPONSE_DATA),"String_Node_Str" + invocationCount + "String_Node_Str"+ (currentTime - startTime)+ "String_Node_Str"+ "String_Node_Str");
  }
  currentTime=System.currentTimeMillis();
  HttpResponse invokeResponse=HttpRequestUtil.doGet(getAPIInvocationURLHttp(API_CONTEXT,API_VERSION_1_0_0) + "String_Node_Str" + API_END_POINT_METHOD,requestHeaders);
  if (executionMode.equalsIgnoreCase(String.valueOf(ExecutionEnvironment.PLATFORM))) {
    while (true) {
      invokeResponse=HttpRequestUtil.doGet(getAPIInvocationURLHttp(API_CONTEXT,API_VERSION_1_0_0) + "String_Node_Str" + API_END_POINT_METHOD,requestHeaders);
      System.out.println("String_Node_Str" + invokeResponse.getResponseCode());
      if (invokeResponse.getResponseCode() == HTTP_RESPONSE_CODE_TOO_MANY_REQUESTS) {
        break;
      }
    }
  }
  assertEquals(invokeResponse.getResponseCode(),HTTP_RESPONSE_CODE_TOO_MANY_REQUESTS,"String_Node_Str" + (SILVER_INVOCATION_LIMIT_PER_MIN + 1) + "String_Node_Str"+ (currentTime - startTime)+ "String_Node_Str"+ "String_Node_Str");
  assertTrue(invokeResponse.getData().contains(MESSAGE_THROTTLED_OUT),"String_Node_Str" + (SILVER_INVOCATION_LIMIT_PER_MIN + 1) + "String_Node_Str"+ (currentTime - startTime)+ "String_Node_Str"+ "String_Node_Str");
}

Fixed version (ground truth):
@Test(groups={"String_Node_Str"},description="String_Node_Str" + "String_Node_Str",dependsOnMethods="String_Node_Str") public void testInvokingWithAPIGoldTierApplicationGoldResourceSilver() throws Exception {
  initialize();
  Thread.sleep(THROTTLING_UNIT_TIME + THROTTLING_ADDITIONAL_WAIT_TIME);
  String swagger="String_Node_Str" + "String_Node_Str" + APIMIntegrationConstants.RESOURCE_TIER.PLUS + "String_Node_Str"+ "String_Node_Str"+ API_NAME+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ API_VERSION_1_0_0+ "String_Node_Str";
  apiPublisherClientUser1.updateResourceOfAPI(providerName,API_NAME,API_VERSION_1_0_0,swagger);
  waitForAPIDeploymentSync(providerName,API_NAME,API_VERSION_1_0_0,APIMIntegrationConstants.IS_API_EXISTS);
  apiStoreClientUser1.waitForSwaggerDocument(user.getUserName(),API_NAME,API_VERSION_1_0_0,APIMIntegrationConstants.RESOURCE_TIER.PLUS,executionMode);
  long startTime=System.currentTimeMillis();
  long currentTime;
  for (int invocationCount=1; invocationCount <= SILVER_INVOCATION_LIMIT_PER_MIN; invocationCount++) {
    currentTime=System.currentTimeMillis();
    HttpResponse invokeResponse=HttpRequestUtil.doGet(getAPIInvocationURLHttp(API_CONTEXT,API_VERSION_1_0_0) + "String_Node_Str" + API_END_POINT_METHOD,requestHeaders);
    assertEquals(invokeResponse.getResponseCode(),HTTP_RESPONSE_CODE_OK,"String_Node_Str" + invocationCount + "String_Node_Str"+ (currentTime - startTime)+ "String_Node_Str"+ "String_Node_Str");
    assertTrue(invokeResponse.getData().contains(API_RESPONSE_DATA),"String_Node_Str" + invocationCount + "String_Node_Str"+ (currentTime - startTime)+ "String_Node_Str"+ "String_Node_Str");
  }
  currentTime=System.currentTimeMillis();
  HttpResponse invokeResponse=HttpRequestUtil.doGet(getAPIInvocationURLHttp(API_CONTEXT,API_VERSION_1_0_0) + "String_Node_Str" + API_END_POINT_METHOD,requestHeaders);
  if (executionMode.equalsIgnoreCase(String.valueOf(ExecutionEnvironment.PLATFORM))) {
    while (true) {
      invokeResponse=HttpRequestUtil.doGet(getAPIInvocationURLHttp(API_CONTEXT,API_VERSION_1_0_0) + "String_Node_Str" + API_END_POINT_METHOD,requestHeaders);
      System.out.println("String_Node_Str" + invokeResponse.getResponseCode());
      if (invokeResponse.getResponseCode() == HTTP_RESPONSE_CODE_TOO_MANY_REQUESTS) {
        break;
      }
    }
  }
  assertEquals(invokeResponse.getResponseCode(),HTTP_RESPONSE_CODE_TOO_MANY_REQUESTS,"String_Node_Str" + (SILVER_INVOCATION_LIMIT_PER_MIN + 1) + "String_Node_Str"+ (currentTime - startTime)+ "String_Node_Str"+ "String_Node_Str");
  assertTrue(invokeResponse.getData().contains(MESSAGE_THROTTLED_OUT_RESOURCE),"String_Node_Str" + (SILVER_INVOCATION_LIMIT_PER_MIN + 1) + "String_Node_Str"+ (currentTime - startTime)+ "String_Node_Str"+ "String_Node_Str");
}