private void Register(string commandPath, string suggestionCommand, IConsole console) { var existingRegistration = _suggestionRegistration.FindRegistration( new FileInfo(commandPath) ); if (existingRegistration == null) { _suggestionRegistration.AddSuggestionRegistration(new Registration(commandPath)); console.Out.WriteLine($"Registered {commandPath}"); } else { console.Out.WriteLine($"Registered {commandPath}"); } }
public void Suggestion_command_path_is_not_case_sensitive() { ISuggestionRegistration suggestionProvider = GetSuggestionRegistration(); suggestionProvider.AddSuggestionRegistration( new Registration(Path.GetFullPath("commandPath"))); Registration registration = suggestionProvider.FindRegistration(new FileInfo("COMMANDPATH")); registration.ExecutablePath.Should().Be(Path.GetFullPath("commandPath")); }
public void When_duplicate_suggestions_are_registered_the_last_one_is_used() { ISuggestionRegistration suggestionProvider = GetSuggestionRegistration(); suggestionProvider.AddSuggestionRegistration( new RegistrationPair(Path.GetFullPath("commandPath"), "suggestionCommand2")); suggestionProvider.AddSuggestionRegistration( new RegistrationPair(Path.GetFullPath("commandPath"), "suggestionCommand2")); RegistrationPair registration = suggestionProvider.FindRegistration(new FileInfo("commandPath")); registration.CommandPath.Should().Be(Path.GetFullPath("commandPath")); registration.SuggestionCommand.Should().Be("suggestionCommand2"); }
public void Missing_suggestion_can_not_be_found() { ISuggestionRegistration suggestionProvider = GetSuggestionRegistration(); var path = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName()); try { Directory.CreateDirectory(path); var unregisteredFile = Path.Combine(path, "im-not-registered"); File.WriteAllText(unregisteredFile, ""); var foundRegistration = suggestionProvider.FindRegistration( new FileInfo(unregisteredFile) ); foundRegistration.Should().BeNull(); } finally { Directory.Delete(path, true); } }