@Override
  public void execute(Context context) {
    List<MeasureComputerWrapper> wrappers = Arrays.stream(measureComputers).map(ToMeasureWrapper.INSTANCE).toList();
    validateMetrics(wrappers);
    measureComputersHolder.setMeasureComputers(sortComputers(wrappers));
  }
@Test
  public void fail_with_ISE_when_two_measure_computers_generate_the_same_output_metric() {
    assertThatThrownBy(() -> {
      MeasureComputer[] computers = new MeasureComputer[] {newMeasureComputer(array(NCLOC_KEY), array(NEW_METRIC_1)), newMeasureComputer(array(CLASSES_KEY), array(NEW_METRIC_1))};
      ComputationStep underTest = new LoadMeasureComputersStep(holder, array(new TestMetrics()), computers);
      underTest.execute(new TestComputationStepContext());
    })
      .isInstanceOf(IllegalStateException.class)
      .hasMessage("Output metric 'metric1' is already defined by another measure computer 'TestMeasureComputer'");
  }