@Test
public void testInitialServerSideCancel() throws Exception {

  String opName = "testInitialServerSideCancel";
  StatusCode errorCode = FakeStatusCode.of(StatusCode.Code.CANCELLED);
  Currency meta = Currency.getInstance("UAH");
  OperationSnapshot resultOperation = getOperation(opName, null, errorCode, meta, true);
  UnaryCallable<Integer, OperationSnapshot> initialCallable =
      mockGetOpSnapshotCallable(StatusCode.Code.OK, resultOperation);
  LongRunningClient longRunningClient = new UnsupportedOperationApi();
  OperationCallable<Integer, Color, Currency> callable =
      FakeCallableFactory.createOperationCallable(
          initialCallable, callSettings, initialContext, longRunningClient);
  OperationFuture<Color, Currency> future =
      callable.futureCall(2, FakeCallContext.createDefault());
  String errorMessage =
      "Operation with name \""
          + opName
          + "\" failed with status = "
          + errorCode
          + " and message = "
          + "null";
  assertFutureFailMetaSuccess(
      future, meta, FakeStatusCode.of(StatusCode.Code.CANCELLED), errorMessage);
  assertThat(executor.getIterationsCount()).isEqualTo(0);
}