public void TheUserBloodResultsIsOpened(string user) { var userLogin = this.GetLoginUser(user); var result = analytics.GetAnalyticBarcodeDataRequestedFromDatabase(userLogin); analytics.IsAnalyticBarcodeDataRequestedSaved(result, userLogin); switch (user) { case "ResultsOnTheWay": this.bloodResultsPage.IsAtResultsOnTheWayPage(userLogin); break; case "User49": this.bloodResultsPage.IsAtLessThan50ResultsPage(userLogin); break; case "User50": this.bloodResultsPage.IsAt50_1000ResultsPage(userLogin); break; case "User1000": this.bloodResultsPage.IsAt50_1000ResultsPage(userLogin); break; case "User1001": this.bloodResultsPage.IsAtMoreThan1000ResultsPage(userLogin); break; case "UserWithMultipleImportResults": this.bloodResultsPage.IsAtLessThan50ResultsPage(userLogin); break; case "UserWithSingleInvalidResults": this.bloodResultsPage.IsAtUniqueInvalidBloodResultsPage(userLogin); break; case "UserWithMultipleInvalidResults": this.bloodResultsPage.IsAtMultipleInvalidBloodResultsPage(userLogin); break; default: throw new InvalidOperationException("Unknown user '" + user + "'."); } }