Skip to content
This repository was archived by the owner on Feb 12, 2025. It is now read-only.

Commit 0b63a2c

Browse files
committed
DevEnv task does not support, finding VS 2013 or 2012 (Bug #348)
1 parent fe23b8d commit 0b63a2c

File tree

2 files changed

+356
-324
lines changed

2 files changed

+356
-324
lines changed

project/UnitTests/Core/Tasks/DevenvTaskTest.cs

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ public class DevenvTaskTest : ProcessExecutorTestFixtureBase
1515
{
1616
private const string DEVENV_PATH = @"C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE\devenv.com";
1717

18+
private const string DEVENV_2013_PATH = @"C:\Program Files\Microsoft Visual Studio 12\Common7\IDE\";
19+
private const string DEVENV_2012_PATH = @"C:\Program Files\Microsoft Visual Studio 11\Common7\IDE\";
1820
private const string DEVENV_2010_PATH = @"C:\Program Files\Microsoft Visual Studio 10\Common7\IDE\";
1921
private const string DEVENV_2008_PATH = @"C:\Program Files\Microsoft Visual Studio 9\Common7\IDE\";
2022
private const string DEVENV_2005_PATH = @"C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\";
@@ -91,8 +93,10 @@ public void DefaultVisualStudioShouldBe2010IfNothingNewerInstalled()
9193
IMock mockRegistry2 = new DynamicMock(typeof(IRegistry));
9294

9395
DevenvTask task2 = new DevenvTask((IRegistry)mockRegistry2.MockInstance, (ProcessExecutor)mockProcessExecutor.MockInstance);
94-
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", DEVENV_2010_PATH,
95-
DevenvTask.VS2010_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
96+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2013_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
97+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2012_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
98+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", DEVENV_2010_PATH,DevenvTask.VS2010_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
99+
96100
Assert.AreEqual(DEVENV_2010_PATH + "devenv.com", task2.Executable);
97101
mockRegistry2.Verify();
98102
mockProcessExecutor.Verify();
@@ -104,10 +108,10 @@ public void DefaultVisualStudioShouldBe2008IfNothingNewerInstalled()
104108
IMock mockRegistry2 = new DynamicMock(typeof(IRegistry));
105109

106110
DevenvTask task2 = new DevenvTask((IRegistry)mockRegistry2.MockInstance, (ProcessExecutor)mockProcessExecutor.MockInstance);
107-
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null,
108-
DevenvTask.VS2010_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
109-
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", DEVENV_2008_PATH,
110-
DevenvTask.VS2008_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
111+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2013_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
112+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2012_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
113+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null,DevenvTask.VS2010_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
114+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", DEVENV_2008_PATH,DevenvTask.VS2008_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
111115
Assert.AreEqual(DEVENV_2008_PATH + "devenv.com", task2.Executable);
112116
mockRegistry2.Verify();
113117
mockProcessExecutor.Verify();
@@ -183,6 +187,8 @@ public void DefaultVisualStudioShouldBe2005IfNothingNewerInstalled()
183187
IMock mockRegistry2 = new DynamicMock(typeof(IRegistry));
184188

185189
DevenvTask task2 = new DevenvTask((IRegistry)mockRegistry2.MockInstance, (ProcessExecutor)mockProcessExecutor.MockInstance);
190+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2013_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
191+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2012_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
186192
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2010_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
187193
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2008_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
188194
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", DEVENV_2005_PATH,
@@ -230,6 +236,8 @@ public void DefaultVisualStudioShouldBe2003IfNothingNewerInstalled()
230236
IMock mockRegistry2 = new DynamicMock(typeof(IRegistry));
231237

232238
DevenvTask task2 = new DevenvTask((IRegistry)mockRegistry2.MockInstance, (ProcessExecutor)mockProcessExecutor.MockInstance);
239+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2013_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
240+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2012_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
233241
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2010_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
234242
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2008_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
235243
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2005_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
@@ -278,6 +286,8 @@ public void DefaultVisualStudioShouldBe2002IfNothingNewerInstalled()
278286
IMock mockRegistry2 = new DynamicMock(typeof(IRegistry));
279287

280288
DevenvTask task2 = new DevenvTask((IRegistry)mockRegistry2.MockInstance, (ProcessExecutor)mockProcessExecutor.MockInstance);
289+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2013_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
290+
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2012_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
281291
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2010_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
282292
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2008_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);
283293
mockRegistry2.ExpectAndReturn("GetLocalMachineSubKeyValue", null, DevenvTask.VS2005_REGISTRY_PATH, DevenvTask.VS_REGISTRY_KEY);

0 commit comments

Comments
 (0)