### Question:
CalculationTask implements ImmutableBean { @Override public String toString() { return "CalculationTask" + cells; } private  CalculationTask(
      CalculationTarget target,
      CalculationFunction<CalculationTarget> function,
      CalculationParameters parameters,
      List<CalculationTaskCell> cells); static CalculationTask of(
      CalculationTarget target,
      CalculationFunction<? extends CalculationTarget> function,
      CalculationTaskCell... cells); static CalculationTask of(
      CalculationTarget target,
      CalculationFunction<? extends CalculationTarget> function,
      CalculationParameters parameters,
      List<CalculationTaskCell> cells); int getRowIndex(); Set<Measure> getMeasures(); @SuppressWarnings("unchecked") MarketDataRequirements requirements(ReferenceData refData); Currency naturalCurrency(ReferenceData refData); @SuppressWarnings("unchecked") CalculationResults execute(ScenarioMarketData marketData, ReferenceData refData); @Override String toString(); static TypedMetaBean<CalculationTask> meta(); @Override TypedMetaBean<CalculationTask> metaBean(); CalculationTarget getTarget(); CalculationFunction<CalculationTarget> getFunction(); CalculationParameters getParameters(); List<CalculationTaskCell> getCells(); @Override boolean equals(Object obj); @Override int hashCode();  }### Answer:
@Test public void testToString() { OutputCurrenciesFunction fn = new OutputCurrenciesFunction(); CalculationTaskCell cell = CalculationTaskCell.of(1, 2, TestingMeasures.PRESENT_VALUE, REPORTING_CURRENCY_USD); CalculationTask task = CalculationTask.of(TARGET, fn, cell); assertThat(task.toString()) .isEqualTo("CalculationTask[CalculationTaskCell[(1, 2), measure=PresentValue, currency=Specific:USD]]"); }