private IssueLocation CreateServerLocation(string filePath = "test.cpp", string message = "message", IssueTextRange textRange = null) =>
 new IssueLocation(filePath, null, textRange, message);
 private SonarQubeHotspot CreateSonarQubeHotspot(string hotspotKey = "some key", string probability          = "high", string filePath = "some path", IssueTextRange textRange = null, string message = "message",
                                                 string ruleKey    = "rule key", DateTimeOffset creationDate = default(DateTimeOffset), DateTimeOffset updateDate = default(DateTimeOffset), string lineHash = "linehash") =>
 new SonarQubeHotspot(hotspotKey,
                      message,
                      lineHash,
                      "assignee",
                      "status",
                      "org",
                      "projectKey",
                      "projectName",
                      "componentKey",
                      filePath,
                      creationDate,
                      updateDate,
                      new SonarQubeHotspotRule(ruleKey, "rule name", "sec category", probability, "risk desc", "vuln desc", "fix req"),
                      textRange ?? new IssueTextRange(5, 10, 15, 20));
 private SonarQubeIssue CreateServerIssue(string issueKey = "issue key", string filePath = "test.cpp", string hash = "hash", string message = "message", string rule = "rule",
                                          SonarQubeIssueSeverity severity = SonarQubeIssueSeverity.Info, IssueTextRange textRange = null,
                                          DateTimeOffset created          = default, DateTimeOffset lastUpdate = default, params IssueFlow[] flows) =>
 new SonarQubeIssue(issueKey, filePath, hash, message, null, rule, true, severity, created, lastUpdate, textRange, flows.ToList());