From eab5faba8a9bbd37922d97fa74f5e7f393dbd99c Mon Sep 17 00:00:00 2001 From: Fried Hoeben Date: Sun, 7 Jul 2024 11:43:27 +0200 Subject: [PATCH] One rerun prefix (#1519) Co-authored-by: Eqerem-Hena --- .../FitNesse/ReleaseNotes/content.txt | 5 ++-- .../responders/run/SuiteResponder.java | 7 ++++- .../responders/run/SuiteResponderTest.java | 30 +++++++++++++++++++ 3 files changed, 39 insertions(+), 3 deletions(-) diff --git a/FitNesseRoot/FitNesse/ReleaseNotes/content.txt b/FitNesseRoot/FitNesse/ReleaseNotes/content.txt index bfa84db90..40c3b4096 100644 --- a/FitNesseRoot/FitNesse/ReleaseNotes/content.txt +++ b/FitNesseRoot/FitNesse/ReleaseNotes/content.txt @@ -1,6 +1,7 @@ !2 Pending Changes -* Allow usage of JDK > 18 ([[1513][https://github.com/unclebob/fitnesse/pull/1513]]). -* Added a new configuration to limit the total amount of test histories per page. ([[1510][https://github.com/unclebob/fitnesse/pull/1510]]) + * Allow usage of JDK > 18 ([[1513][https://github.com/unclebob/fitnesse/pull/1513]]). + * Added a new configuration to limit the total amount of test histories per page. ([[1510][https://github.com/unclebob/fitnesse/pull/1510]]) + * Do not add 'RerunLastFailures_' prefix on failure of re-run ([[1519][https://github.com/unclebob/fitnesse/pull/1519]])/ !2 20240219 * Added the defined values to the overview of all variables in scope. ([[1472][https://github.com/unclebob/fitnesse/pull/1472]]) diff --git a/src/fitnesse/responders/run/SuiteResponder.java b/src/fitnesse/responders/run/SuiteResponder.java index fc7224cd0..22df2c70c 100644 --- a/src/fitnesse/responders/run/SuiteResponder.java +++ b/src/fitnesse/responders/run/SuiteResponder.java @@ -295,7 +295,12 @@ protected String getRerunPageName() { PageCrawler pageCrawler = page.getPageCrawler(); WikiPagePath fullPath = pageCrawler.getFullPath(); String fullPathName = PathParser.render(fullPath); - return "RerunLastFailures_"+fullPathName.replace(".","-"); + if (fullPathName.startsWith("RerunLastFailures_")) { + String newFullPathName = fullPathName.replace(".", "-"); + return newFullPathName; + } else { + return "RerunLastFailures_" + fullPathName.replace(".", "-"); + } } protected String getTitle() { diff --git a/test/fitnesse/responders/run/SuiteResponderTest.java b/test/fitnesse/responders/run/SuiteResponderTest.java index 0536d81c5..d2746f0e5 100644 --- a/test/fitnesse/responders/run/SuiteResponderTest.java +++ b/test/fitnesse/responders/run/SuiteResponderTest.java @@ -565,6 +565,36 @@ public void loadsCustomFormatters() throws Exception { assertTrue(FooFormatter.initialized); } + @Test + public void testGetRerunPageName_withRerunPrefix() throws Exception { + String rerunPageName = "RerunLastFailures_SuitePage"; + suite = WikiPageUtil.addPage(root, PathParser.parse(rerunPageName), "This is a rerun page\n"); + request.setResource(rerunPageName); + responder.makeResponse(context, request); + + String result = responder.getRerunPageName(); + assertEquals(rerunPageName, result); + } + + @Test + public void testGetRerunPageName_ReplacesPeriod() throws Exception { + addTestToSuite("TestTwo", "|!-fitnesse.testutil.FailFixture-!|\n\n|!-fitnesse.testutil.FailFixture-!|\n"); + request.setResource("SuitePage.TestTwo"); + responder.makeResponse(context, request); + + String result = responder.getRerunPageName(); + assertEquals("RerunLastFailures_SuitePage-TestTwo", result); + } + + @Test + public void testGetRerunPageName_withoutRerunPrefix() throws Exception { + request.setResource("SuitePage"); + responder.makeResponse(context, request); + + String result = responder.getRerunPageName(); + assertEquals("RerunLastFailures_SuitePage", result); + } + private String runSuite() throws Exception { Response response = responder.makeResponse(context, request);