-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add some dos directory resolving tests #368
Merged
maximilien-noal
merged 1 commit into
OpenRakis:fix/dos_file_manager
from
JorisVanEijden:fix/dos_file_manager
Jul 6, 2023
Merged
Add some dos directory resolving tests #368
maximilien-noal
merged 1 commit into
OpenRakis:fix/dos_file_manager
from
JorisVanEijden:fix/dos_file_manager
Jul 6, 2023
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Nice ! I'll merge them into the branch. Thank you ! :) |
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 6, 2023
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 6, 2023
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 7, 2023
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 7, 2023
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 8, 2023
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 8, 2023
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 18, 2023
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 21, 2023
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 22, 2023
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 24, 2023
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 24, 2023
maximilien-noal
pushed a commit
that referenced
this pull request
Jul 24, 2023
maximilien-noal
added a commit
that referenced
this pull request
Jul 24, 2023
…e: Select and Get Default Drive. Fix: '..' and '.' support. (#358) * Feature: Create Folder. Fix: '..' and '.' support. Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: IMemory interface. (DOSFileManager) Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: DosFilePathResolver class for DosFileManager Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * DOSFileManager: use GetParentDirectoryFullPath more Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: GetDirectoryCaseSensitive -> TryGetFullNameOnDiskOfParentFolder Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: GetActualCaseForFileName -> TryGetHostFullNameForFile Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: parent parameter for TryGetFullNameOnDiskOfParentDirectory is not nullable Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: use bang instead of false Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: support filepaths such as 'C:file.ext' Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: temp file creation (Krondor) Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: recursive folder creation. Documentation. Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: moved IsThereAnyDirectoryOrFileWithTheSameName Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * doc: added missing XML documentation Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: rooted file path support (Dune 2) Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * git: ignore VSharp files Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: Moved current folder and DriveMap Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * feature: current drive folder Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * feature: relative path support with DOS drive Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: removed useless null checks Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * cleanup Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: removed useless null check Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: renamed forCreation parameter Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: renamed directory parameter Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: moved var closer to its usage Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * typo Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: Use OrdinalIgnoreCase for DOS names comparisons Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * DOSFileManager: private DosPathResolver is readonly Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: SetCurrentDir expects a DOS path Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: clearer dos/Host parameters strings names Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: per-drive current folder path Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: use IEnumerable for DOS drive letters Co-authored-by: Joris van Eijden <joris.vaneijden@gmail.com> * refactor: don't convert char to string. Co-authored-by: Joris van Eijden <joris.vaneijden@gmail.com> * refactor: renamed a method Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: give searchPattern directly Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: enumerate folders first, then files Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: moved ToUpperInvariant before loop Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: use IDictionary interface Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: removed duplicated API (DosPathResolver) Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: removed boolean in public API Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: consider paths that start with '\' as rooted Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: Convert CurrentHostDirectory to forward slashes Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: renamed DosPathResolver method Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: DOS can't access folders above mountPoint Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: return the right paths. Fixes Krondor. Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: return PathNotFound, not FileNotFound Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * feature: emulate 64 ASCIIZ limit for current path Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * feature: RemoveDirectory INT21H function Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: initialize DriveMap in ctor Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: check whether paths are within mountpoints Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * feature: INT21H GetCurrentDirectory Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * feature: DriveLetter property for MountedFolder Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * Add some dos directory resolving tests (#368) * fix: dos file mamager current directory format Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: DOSPathResolver as internal class Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * feature: Select/Get Default Drive (INT21H) Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: DosPathResolver doesn't expose state Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * doc: fixed RemoveDirectory documentation Also simplified the function a bit. It doesn't search for the parent anymore. Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: renamed DOS property Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: removed redundant cast Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: DosFPathResolver relative path calculations Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: GetCurrentDir calls SetZeroTerminatedString Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: SetCurrentFolder with relative paths Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * fix: OpenFile trying to resolve DOS path with host path Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: simplified CreateDirectory Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * refactor: removed useless Trim(DirSeparator), renamed vars Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * DOSFileManager: access denied if folder alreasy exists Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * DOSFileManager: Renamed TryGet... to GetXOrDefault pattern Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * DOSFileManager: CreateFolder is no longer recursive Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * DosPathResolver: startup currentDrive is a ctor parameter Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * MountedFolder: moved FullCurrentDosPathOnDrive into DosPathResolver method Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * DosPathResolver: removed unused method Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * DosPathResolver: renamed Try... method to GetXOrDefault pattern Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * MountedFolder: track Current DOS Folder, relative to drive Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * IMemory: removed duplicated UInt8/16/32 from Indexable Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> * DosPathResolver: pass string to GetExeParentFolder, call it only if needed Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> --------- Signed-off-by: Maximilien Noal <noal.maximilien@gmail.com> Co-authored-by: Joris van Eijden <joris.vaneijden@gmail.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.