Home / Class/ FilePermissionsTests Class — spring-boot Architecture

FilePermissionsTests Class — spring-boot Architecture

Architecture documentation for the FilePermissionsTests class in FilePermissionsTests.java from the spring-boot codebase.

Entity Profile

Source Code

buildpack/spring-boot-buildpack-platform/src/test/java/org/springframework/boot/buildpack/platform/io/FilePermissionsTests.java lines 45–99

class FilePermissionsTests {

	@TempDir
	@SuppressWarnings("NullAway.Init")
	Path tempDir;

	@Test
	@DisabledOnOs(OS.WINDOWS)
	void umaskForPath() throws IOException {
		FileAttribute<Set<PosixFilePermission>> fileAttribute = PosixFilePermissions
			.asFileAttribute(PosixFilePermissions.fromString("rw-r-----"));
		Path tempFile = Files.createTempFile(this.tempDir, "umask", null, fileAttribute);
		assertThat(FilePermissions.umaskForPath(tempFile)).isEqualTo(0640);
	}

	@Test
	@DisabledOnOs(OS.WINDOWS)
	void umaskForPathWithNonExistentFile() {
		assertThatIOException()
			.isThrownBy(() -> FilePermissions.umaskForPath(Paths.get(this.tempDir.toString(), "does-not-exist")));
	}

	@Test
	@EnabledOnOs(OS.WINDOWS)
	void umaskForPathOnWindowsFails() throws IOException {
		Path tempFile = Files.createTempFile("umask", null);
		assertThatIllegalStateException().isThrownBy(() -> FilePermissions.umaskForPath(tempFile))
			.withMessageContaining("Unsupported file type for retrieving Posix attributes");
	}

	@Test
	@SuppressWarnings("NullAway") // Test null check
	void umaskForPathWithNullPath() {
		assertThatIllegalArgumentException().isThrownBy(() -> FilePermissions.umaskForPath(null));
	}

	@Test
	void posixPermissionsToUmask() {
		Set<PosixFilePermission> permissions = PosixFilePermissions.fromString("rwxrw-r--");
		assertThat(FilePermissions.posixPermissionsToUmask(permissions)).isEqualTo(0764);
	}

	@Test
	void posixPermissionsToUmaskWithEmptyPermissions() {
		Set<PosixFilePermission> permissions = Collections.emptySet();
		assertThat(FilePermissions.posixPermissionsToUmask(permissions)).isZero();
	}

	@Test
	@SuppressWarnings("NullAway") // Test null check
	void posixPermissionsToUmaskWithNullPermissions() {
		assertThatIllegalArgumentException().isThrownBy(() -> FilePermissions.posixPermissionsToUmask(null));
	}

}

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free