Browse Source

SONAR-22159 Add assume check on creation date properly set in test cleanUpOld

branch-9.9
Matteo Mara 1 month ago
parent
commit
67e5e8d004

+ 13
- 0
sonar-scanner-engine/src/test/java/org/sonar/scanner/bootstrap/GlobalTempFolderProviderTest.java View File

@@ -23,6 +23,7 @@ import com.google.common.collect.ImmutableMap;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.attribute.BasicFileAttributeView;
import java.nio.file.attribute.FileTime;
import java.util.Collections;
@@ -70,6 +71,7 @@ public class GlobalTempFolderProviderTest {
File tmp = new File(workingDir, ".sonartmp_" + i);
tmp.mkdirs();
setFileCreationDate(tmp, creationTime);
assumeCorrectFileCreationDate(tmp, creationTime);
}

tempFolderProvider.provide(
@@ -80,6 +82,17 @@ public class GlobalTempFolderProviderTest {
FileUtils.deleteQuietly(workingDir);
}

// See SONAR-22159, the test started failing due to issues in setting the correct creation time on Cirrus, skipping the test if the problem
// happens
private void assumeCorrectFileCreationDate(File tmp, long creationTime) throws IOException {
Path tmpFilePath = tmp.toPath();
FileTime fileCreationTimeSet = Files.getFileAttributeView(tmpFilePath, BasicFileAttributeView.class).readAttributes().creationTime();
FileTime expectedCreationTime = FileTime.fromMillis(creationTime);

assumeTrue(String.format("Incorrect creation date set on temporary file %s: %s set instead of %s", tmpFilePath.toAbsolutePath(), fileCreationTimeSet, expectedCreationTime),
expectedCreationTime.compareTo(fileCreationTimeSet) >= 0);
}

@Test
public void createTempFolderSonarHome() throws Exception {
// with sonar home, it will be in {sonar.home}/.sonartmp

Loading…
Cancel
Save