C#: Enable nullability for Autobuild tests project.

This commit is contained in:
Calum Grant
2020-03-28 10:04:37 +00:00
parent 29a5ea121a
commit 6b8a5606d6
3 changed files with 12 additions and 11 deletions

View File

@@ -44,7 +44,7 @@ namespace Semmle.Extraction.Tests
public IDictionary<string, string> RunProcessOut = new Dictionary<string, string>();
public IDictionary<string, string> RunProcessWorkingDirectory = new Dictionary<string, string>();
int IBuildActions.RunProcess(string cmd, string args, string workingDirectory, IDictionary<string, string> env, out IList<string> stdOut)
int IBuildActions.RunProcess(string cmd, string args, string? workingDirectory, IDictionary<string, string>? env, out IList<string> stdOut)
{
var pattern = cmd + " " + args;
RunProcessIn.Add(pattern);
@@ -60,7 +60,7 @@ namespace Semmle.Extraction.Tests
throw new ArgumentException("Missing RunProcess " + pattern);
}
int IBuildActions.RunProcess(string cmd, string args, string workingDirectory, IDictionary<string, string> env)
int IBuildActions.RunProcess(string cmd, string args, string? workingDirectory, IDictionary<string, string>? env)
{
var pattern = cmd + " " + args;
RunProcessIn.Add(pattern);
@@ -90,16 +90,16 @@ namespace Semmle.Extraction.Tests
throw new ArgumentException("Missing DirectoryExists " + dir);
}
public IDictionary<string, string> GetEnvironmentVariable = new Dictionary<string, string>();
public IDictionary<string, string?> GetEnvironmentVariable = new Dictionary<string, string?>();
string IBuildActions.GetEnvironmentVariable(string name)
string? IBuildActions.GetEnvironmentVariable(string name)
{
if (GetEnvironmentVariable.TryGetValue(name, out var ret))
return ret;
throw new ArgumentException("Missing GetEnvironmentVariable " + name);
}
public string GetCurrentDirectory;
public string GetCurrentDirectory = "";
string IBuildActions.GetCurrentDirectory()
{
@@ -334,10 +334,10 @@ namespace Semmle.Extraction.Tests
}
Autobuilder CreateAutoBuilder(string lgtmLanguage, bool isWindows,
string buildless = null, string solution = null, string buildCommand = null, string ignoreErrors = null,
string msBuildArguments = null, string msBuildPlatform = null, string msBuildConfiguration = null, string msBuildTarget = null,
string dotnetArguments = null, string dotnetVersion = null, string vsToolsVersion = null,
string nugetRestore = null, string allSolutions = null,
string? buildless = null, string? solution = null, string? buildCommand = null, string? ignoreErrors = null,
string? msBuildArguments = null, string? msBuildPlatform = null, string? msBuildConfiguration = null, string? msBuildTarget = null,
string? dotnetArguments = null, string? dotnetVersion = null, string? vsToolsVersion = null,
string? nugetRestore = null, string? allSolutions = null,
string cwd = @"C:\Project")
{
Actions.GetEnvironmentVariable["CODEQL_AUTOBUILDER_CSHARP_NO_INDEXING"] = "false";

View File

@@ -5,6 +5,7 @@
<TargetFramework>netcoreapp3.0</TargetFramework>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<RuntimeIdentifiers>win-x64;linux-x64;osx-x64</RuntimeIdentifiers>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>

View File

@@ -61,7 +61,7 @@ namespace Semmle.Autobuild
/// <param name="silent">Whether this command should run silently.</param>
/// <param name="workingDirectory">The working directory (<code>null</code> for current directory).</param>
/// <param name="environment">Additional environment variables.</param>
public BuildCommand(string exe, string argumentsOpt, bool silent, string? workingDirectory = null, IDictionary<string, string>? environment = null)
public BuildCommand(string exe, string? argumentsOpt, bool silent, string? workingDirectory = null, IDictionary<string, string>? environment = null)
{
this.exe = exe;
this.arguments = argumentsOpt ?? "";
@@ -183,7 +183,7 @@ namespace Semmle.Autobuild
/// <param name="silent">Whether the executable should run silently.</param>
/// <param name="workingDirectory">The working directory (<code>null</code> for current directory).</param>
/// <param name="environment">Additional environment variables.</param>
public static BuildScript Create(string exe, string argumentsOpt, bool silent, string? workingDirectory, IDictionary<string, string>? environment) =>
public static BuildScript Create(string exe, string? argumentsOpt, bool silent, string? workingDirectory, IDictionary<string, string>? environment) =>
new BuildCommand(exe, argumentsOpt, silent, workingDirectory, environment);
/// <summary>