示例#1
0
        public void NewStateHasHomeDirectory()
        {
            var state = new FileSystemState();
            var home  = state.GetHomeDirectory();

            Assert.IsNotNull(home);
        }
示例#2
0
        public void HomeDirectoryStartsWithNoFiles()
        {
            var state = new FileSystemState();
            var home  = state.GetHomeDirectory();

            Assert.IsNotNull(home.FilesInDirectory);
            Assert.IsEmpty(home.FilesInDirectory);
        }
示例#3
0
        public void NewStateHomeDirectoryIsCurrentDirectory()
        {
            var state   = new FileSystemState();
            var home    = state.GetHomeDirectory();
            var current = state.GetCurrentDirectory();

            Assert.AreEqual(home, current);
        }
示例#4
0
        public void HomeDirectoryHasRootParentDirectory()
        {
            var state = new FileSystemState();
            var home  = state.GetHomeDirectory();
            var root  = state.GetRootDirectory();

            Assert.IsNotNull(home.ParentDirectory);
            Assert.AreEqual(home.ParentDirectory, root);
        }
示例#5
0
        public void NewStateHasHomeDirectoryNamedHome()
        {
            var state    = new FileSystemState();
            var expected = "home";
            var home     = state.GetHomeDirectory();

            Assert.IsNotNull(home);
            Assert.AreEqual(home.Name, expected);
        }
示例#6
0
        public void InitializeFileSystemState(
            FileSystemState fileSystemState,
            PermissionController permissionController,
            DirectoryController directoryController)
        {
            // TODO - Make it so that all actions are permission based (add requires write access, so does delete, need read access to look at anything, execute to run something, etc)
            var home = fileSystemState.GetHomeDirectory();

            var planetDirectoryPermission   = permissionController.GetCustomPermission(canRead: true, canExecute: true);
            var isAddPlanetDirectorySuccess = directoryController.TryAddDirectory("planets", planetDirectoryPermission, home, out _);

            Debug.Assert(isAddPlanetDirectorySuccess, $"Failed to add `planets` directory under `{home.Name}` directory");
        }