@Override
  public void execute(ComputationStep.Context context) {
    executeForBranch(treeRootHolder.getRoot());
  }
@Test
  public void givenNoChangesFound_whenEventStep_thenDebugLogAndSkipEvent() {
    // given
    logTester.setLevel(Level.DEBUG);
    QualityProfile existingQP = qp(QP_NAME_1, LANGUAGE_KEY_1, BEFORE_DATE);
    QualityProfile newQP = qp(QP_NAME_1, LANGUAGE_KEY_1, AFTER_DATE);

    // mock updated profile
    qProfileStatusRepository.register(newQP.getQpKey(), UPDATED);
    mockQualityProfileMeasures(treeRootHolder.getRoot(), arrayOf(existingQP), arrayOf(newQP));

    when(qualityProfileRuleChangeTextResolver.mapChangeToNumberOfRules(newQP, treeRootHolder.getRoot().getUuid())).thenReturn(Collections.emptyMap());
    var context = new TestComputationStepContext();

    // when
    underTest.execute(context);

    // then
    assertThat(logTester.logs(Level.DEBUG)).containsExactly("No changes found for Quality Profile " + newQP.getQpKey() + ". Quality Profile event skipped.");
    verify(eventRepository, never()).add(any(Event.class));
  }