Run tests on both k10 and net45

This commit is contained in:
Brice Lambson 2014-06-10 11:14:28 -07:00
parent 4b5b85a2ac
commit efd257a7be
2 changed files with 22 additions and 18 deletions

View File

@ -28,31 +28,29 @@ projectFile=''
object configsObject; object configsObject;
var configs = project.TryGetValue("configurations", out configsObject) var configs = project.TryGetValue("configurations", out configsObject)
? (Dictionary<string, object>)configsObject ? (Dictionary<string, object>)configsObject
: new Dictionary<string, object>(); : new Dictionary<string, object>
{
{ "net45", new Dictionary<string, object>() },
{ "k10", new Dictionary<string, object>() }
};
// Currently only net* and k* targets are supported. See aspnet/Universe#53 // Currently only net* and k* targets are supported. See aspnet/Universe#53
var targetFrameworks = configs.Keys.Where(k => k.StartsWith("net", StringComparison.OrdinalIgnoreCase) /* var targetFrameworks = configs.Keys.Where(k => k.StartsWith("net", StringComparison.OrdinalIgnoreCase)
|| k.StartsWith("k", StringComparison.OrdinalIgnoreCase) */ ); || k.StartsWith("k", StringComparison.OrdinalIgnoreCase));
var originalTargetFramework = Environment.GetEnvironmentVariable("TARGET_FRAMEWORK"); foreach (var framework in targetFrameworks)
try
{ {
foreach (var framework in targetFrameworks) if (framework.StartsWith("net", StringComparison.OrdinalIgnoreCase))
{ {
// Workaround for aspnet/KRuntime#129 K("test", projectFolder, "");
var frameworkString = framework.StartsWith("net", StringComparison.OrdinalIgnoreCase) }
? "" else if (!IsMono)
: framework; {
K("test", projectFolder, "default -svrc50");
Environment.SetEnvironmentVariable("TARGET_FRAMEWORK", frameworkString);
K("test", projectFolder);
} }
} finally
{
Environment.SetEnvironmentVariable("TARGET_FRAMEWORK", originalTargetFramework);
} }
} }
} }
macro name='K' command='string' workingdir='string' macro name='K' command='string' workingdir='string' kvmUse='string'
k k

View File

@ -4,8 +4,14 @@ k
Run klr commands in your project. Executes k sdk. Run klr commands in your project. Executes k sdk.
command='' command=''
kvmUse=''
*/} */}
exec program='cmd' commandline='/C k ${command}' if='!IsMono' default kvmUse=''
var kvmPath='${Directory.GetCurrentDirectory()}\packages\KoreBuild\build\kvm'
exec program='cmd' commandline='/C k ${command}' if='!IsMono && string.IsNullOrEmpty(kvmUse)'
exec program='cmd' commandline='/C "${kvmPath}" use ${kvmUse} && k ${command}' if='!IsMono && !string.IsNullOrEmpty(kvmUse)'
exec program='k' commandline='${command}' if='IsMono' exec program='k' commandline='${command}' if='IsMono'