Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
1d08ebc
cleanup of unused method
Stift Mar 31, 2016
9aec6af
create tests for CacheDownloadStrategy (bootstrapper)
Stift Mar 31, 2016
084a65b
rearranging files for better overview (bootstrapper)
Stift Mar 31, 2016
f488bcb
added tests for download strategy determination
Stift Apr 3, 2016
a3bc96a
move strategy test
Stift Apr 3, 2016
c128284
create tests for GitHubDownloadStrategy and refactored it
Stift Apr 3, 2016
1a26b19
added test for NugetDownloadStrategy
Stift Apr 4, 2016
6c64848
added tests for NugetApiHelper
Stift Apr 4, 2016
653ea62
added test for SemVer
Stift Apr 4, 2016
63133e9
refactor method with wrong responseStream handling
Stift Apr 4, 2016
2771ae9
Merge remote-tracking branch 'fsprojects/master' into bootstrapUpdate…
Stift Apr 7, 2016
fa39b9e
refactored argument parsing and created test for argument parsing
Stift Apr 7, 2016
f65ac2e
added tests for StartPaketBootstrapping
Stift Apr 8, 2016
54e3bd6
create some additional tests for ArgumentParser
Stift Apr 8, 2016
43bf687
removed fallback logic from CachedDownload strategy as this is alread…
Stift Apr 8, 2016
82fb98d
added test on Name of CacheDownloadStrategyTest
Stift Apr 8, 2016
7f9a01c
improve argument parsing
Stift Apr 11, 2016
4ef6965
Merge commit '0a917114f993b3e3b9917a208c768273b42ee87f' into bootstra…
Stift Apr 11, 2016
cbb9683
fix deprecated assert after nunit3 introduction
Stift Apr 11, 2016
19b601f
refactored console logging to use centrally one implementation and al…
Stift Apr 12, 2016
e00d077
Merge commit 'fbeb48803e5084216f7c4c6505d50ad7a5005d67' into bootstra…
Stift Apr 12, 2016
084d31b
fixing non-compiling tests
Stift Apr 12, 2016
57e0354
add help output to bootstrapper
Stift Apr 12, 2016
9dabe0d
fix bug when downloading latest but prerelease is already in directory
Stift Apr 12, 2016
da63dd9
optimize code
Stift Apr 12, 2016
84f421a
remove unused code
Stift Apr 12, 2016
5c821df
add test for non cached strategy resolving
Stift Apr 12, 2016
60cc032
add --help option to documentation
Stift Apr 12, 2016
dc9e256
removed code commented out and missed to remove
Apr 13, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
improve argument parsing
  • Loading branch information
Stift committed Apr 11, 2016
commit 7f9a01c5e0a660fe86627b4e81305c3873c31ef6
15 changes: 5 additions & 10 deletions src/Paket.Bootstrapper/ArgumentParser.cs
Original file line number Diff line number Diff line change
Expand Up @@ -37,24 +37,16 @@ public static BootstrapperOptions ParseArgumentsAndConfigurations(IEnumerable<st

var commandArgs = arguments.ToList();

if (commandArgs.Contains(CommandArgs.PreferNuget))
if (commandArgs.Contains(CommandArgs.PreferNuget) || appSettings.GetKey(AppSettingKeys.PreferNugetAppSettingsKey).ToLowerSafe() == "true")
{
options.PreferNuget = true;
commandArgs.Remove(CommandArgs.PreferNuget);
}
else if (appSettings.GetKey(AppSettingKeys.PreferNugetAppSettingsKey).ToLowerSafe() == "true")
{
options.PreferNuget = true;
}
if (commandArgs.Contains(CommandArgs.ForceNuget))
if (commandArgs.Contains(CommandArgs.ForceNuget) || appSettings.GetKey(AppSettingKeys.ForceNugetAppSettingsKey).ToLowerSafe() == "true")
{
options.ForceNuget = true;
commandArgs.Remove(CommandArgs.ForceNuget);
}
else if (appSettings.GetKey(AppSettingKeys.ForceNugetAppSettingsKey).ToLowerSafe() == "true")
{
options.ForceNuget = true;
}
if (commandArgs.Contains(CommandArgs.Silent))
{
options.Silent = true;
Expand Down Expand Up @@ -101,10 +93,12 @@ private static IEnumerable<string> EvaluateDownloadOptions(DownloadArguments dow
{
ignorePrerelease = false;
latestVersion = String.Empty;
commandArgs.Remove(CommandArgs.Prerelease);
}
else
{
latestVersion = commandArgs[0];
commandArgs.Remove(commandArgs[0]);
}
}

Expand All @@ -114,6 +108,7 @@ private static IEnumerable<string> EvaluateDownloadOptions(DownloadArguments dow
downloadArguments.NugetSource = nugetSource;
downloadArguments.DoSelfUpdate = doSelfUpdate;
downloadArguments.Target = target;
downloadArguments.Folder = folder;
return commandArgs;
}

Expand Down
2 changes: 1 addition & 1 deletion src/Paket.Bootstrapper/DownloadArguments.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ namespace Paket.Bootstrapper
{
public class DownloadArguments
{
public string Folder { get; private set; }
public string Folder { get; set; }
public string Target { get; set; }
public string NugetSource { get; set; }
public bool DoSelfUpdate { get; set; }
Expand Down
2 changes: 1 addition & 1 deletion src/Paket.Bootstrapper/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ static void Main(string[] args)

var options = ArgumentParser.ParseArgumentsAndConfigurations(args, ConfigurationManager.AppSettings, Environment.GetEnvironmentVariables());
if (!options.Silent && options.UnprocessedCommandArgs.Any())
Console.WriteLine("Ignoring the following unknown arguments: {0}", String.Join(", ", options.UnprocessedCommandArgs));
Console.WriteLine("Ignoring the following unknown argument(s): {0}", String.Join(", ", options.UnprocessedCommandArgs));

var effectiveStrategy = GetEffectiveDownloadStrategy(options.DownloadArguments, options.PreferNuget, options.ForceNuget);

Expand Down
7 changes: 4 additions & 3 deletions tests/Paket.Bootstrapper.Tests/ArgumentParserTests.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Linq;
Expand Down Expand Up @@ -36,7 +35,7 @@ public void EmptyArguments_GetDefault()
Assert.That(result.UnprocessedCommandArgs, Is.Empty);
Assert.That(result.DownloadArguments, Is.Not.Null);
Assert.That(result.DownloadArguments.DoSelfUpdate, Is.False);
Assert.That(result.DownloadArguments.Folder, Is.Null);
Assert.That(result.DownloadArguments.Folder, Is.Not.Null);
Assert.That(result.DownloadArguments.IgnoreCache, Is.False);
Assert.That(result.DownloadArguments.IgnorePrerelease, Is.True);
Assert.That(result.DownloadArguments.LatestVersion, Is.Empty);
Expand Down Expand Up @@ -164,6 +163,7 @@ public void Prerelease()

//assert
Assert.That(result.DownloadArguments.IgnorePrerelease, Is.False);
Assert.That(result.UnprocessedCommandArgs, Is.Empty);
}

[Test]
Expand All @@ -188,6 +188,7 @@ public void LatestVersion()

//assert
Assert.That(result.DownloadArguments.LatestVersion, Is.EqualTo("1.0"));
Assert.That(result.UnprocessedCommandArgs, Is.Empty);
}

[Test]
Expand All @@ -210,7 +211,7 @@ public void LeftoverCommandArgs()
//arrange

//act
var result = ArgumentParser.ParseArgumentsAndConfigurations(new[] { "leftover" }, null, null);
var result = ArgumentParser.ParseArgumentsAndConfigurations(new[] { "2.22", "leftover" }, null, null);

//assert
Assert.That(result.UnprocessedCommandArgs, Is.Not.Empty.And.EqualTo(new[] { "leftover" }));
Expand Down