// Path: src/main/java/org/sonar/plugins/stash/StashPlugin.java
// public enum IssueType {
//   CONTEXT,
//   REMOVED,
//   ADDED,
// }


import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.Mock;
import org.sonar.plugins.stash.StashPlugin.IssueType;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

    report1.add(comment2);

    StashCommentReport report2 = new StashCommentReport();
    report2.add(report1);
    assertEquals(2, report2.size());
  }

  @Test
  public void testAddNotEmptyReportToEmptyReport() {
    StashCommentReport report1 = new StashCommentReport();

    StashCommentReport report2 = new StashCommentReport();
    report2.add(comment1);

    report1.add(report2);
    assertEquals(1, report1.size());
  }

  @Test
  public void testAddEmptyReportToEmptyReport() {
    StashCommentReport report1 = new StashCommentReport();
    StashCommentReport report2 = new StashCommentReport();

    report1.add(report2);
    assertEquals(0, report1.size());
  }

  @Test
  public void applyDiffReportWithCONTEXT() {
    StashDiff diff = mock(StashDiff.class);

// Path: src/main/java/org/sonar/plugins/stash/StashPlugin.java
// public enum IssueType {
//   CONTEXT,
//   REMOVED,
//   ADDED,
// }


// Path: src/test/java/org/sonar/plugins/stash/issue/StashCommentReportTest.java
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.Mock;
import org.sonar.plugins.stash.StashPlugin.IssueType;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

    report1.add(comment2);

    StashCommentReport report2 = new StashCommentReport();
    report2.add(report1);
    assertEquals(2, report2.size());
  }

  @Test
  public void testAddNotEmptyReportToEmptyReport() {
    StashCommentReport report1 = new StashCommentReport();

    StashCommentReport report2 = new StashCommentReport();
    report2.add(comment1);

    report1.add(report2);
    assertEquals(1, report1.size());
  }

  @Test
  public void testAddEmptyReportToEmptyReport() {
    StashCommentReport report1 = new StashCommentReport();
    StashCommentReport report2 = new StashCommentReport();

    report1.add(report2);
    assertEquals(0, report1.size());
  }

  @Test
  public void applyDiffReportWithCONTEXT() {
    StashDiff diff = mock(StashDiff.class);

    when(diff.getType()).thenReturn(IssueType.CONTEXT);
