package com.example.aiapp import kotlin.test.Test import kotlin.test.assertEquals class FilesNavigationTest { @Test fun `back walks through the common ancestor toward the project`() { val project = "/home/bob/repos/project" assertEquals("/", nextDirectoryToward("/etc", project)) assertEquals("/home", nextDirectoryToward("/", project)) assertEquals("/home/bob", nextDirectoryToward("/home", project)) assertEquals("/home/bob/repos", nextDirectoryToward("/home/bob", project)) assertEquals(project, nextDirectoryToward("/home/bob/repos", project)) assertEquals(null, nextDirectoryToward(project, project)) } @Test fun `back leaves a project descendant one directory at a time`() { assertEquals( "/home/bob/repos/project/src", nextDirectoryToward("/home/bob/repos/project/src/main", "/home/bob/repos/project"), ) } @Test fun `paths inside the machine home use tilde notation`() { assertEquals("~", tildePath("/home/bob", "/home/bob")) assertEquals("~/repos/project", tildePath("/home/bob/repos/project", "/home/bob/")) assertEquals("/home/bobby/project", tildePath("/home/bobby/project", "/home/bob")) assertEquals("/etc", tildePath("/etc", "/home/bob")) } }