Skip to content

Commit 119d31a

Browse files
committed
Add another Code Explorer test.
1 parent 0a29e1e commit 119d31a

File tree

2 files changed

+30
-0
lines changed

2 files changed

+30
-0
lines changed

RubberduckTests/CodeExplorer/CodeExplorerTests.cs

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
using Rubberduck.Parsing.VBA;
99
using Rubberduck.Settings;
1010
using Rubberduck.UI.CodeExplorer.Commands;
11+
using Rubberduck.UnitTesting;
1112
using Rubberduck.VBEditor.VBEHost;
1213
using RubberduckTests.Mocks;
1314

@@ -75,6 +76,31 @@ public void AddUserForm()
7576
vbComponents.Count(c => c.Type == vbext_ComponentType.vbext_ct_MSForm) == 1);
7677
}
7778

79+
[TestMethod]
80+
public void AddTestModule()
81+
{
82+
var builder = new MockVbeBuilder();
83+
VBComponent component;
84+
var vbe = builder.BuildFromSingleStandardModule("", out component);
85+
var mockHost = new Mock<IHostApplication>();
86+
mockHost.SetupAllProperties();
87+
88+
var configLoader = new Mock<ConfigurationLoader>(null, null);
89+
configLoader.Setup(c => c.LoadConfiguration()).Returns(GetDefaultUnitTestConfig());
90+
91+
var commands = new List<ICommand>
92+
{
93+
new CodeExplorer_AddTestModuleCommand(vbe.Object, new NewUnitTestModuleCommand(vbe.Object, configLoader.Object))
94+
};
95+
96+
var vm = new CodeExplorerViewModel(new RubberduckParserState(), commands);
97+
vm.AddTestModuleCommand.Execute(null);
98+
99+
var vbComponents = vbe.Object.VBProjects.Item(0).VBComponents.Cast<VBComponent>();
100+
101+
Assert.IsTrue(vbComponents.Count(c => c.Type == vbext_ComponentType.vbext_ct_StdModule) == 2);
102+
}
103+
78104
#region
79105
private Configuration GetDefaultUnitTestConfig()
80106
{

RubberduckTests/Mocks/MockProjectBuilder.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@ private Mock<References> CreateReferencesMock()
155155
result.As<IEnumerable>().Setup(m => m.GetEnumerator()).Returns(() => _references.GetEnumerator());
156156
result.Setup(m => m.Item(It.IsAny<int>())).Returns<int>(index => _references.ElementAt(index - 1));
157157
result.SetupGet(m => m.Count).Returns(() => _references.Count);
158+
result.Setup(m => m.AddFromFile(It.IsAny<string>()));
158159
return result;
159160
}
160161

@@ -202,6 +203,9 @@ private Mock<CodeModule> CreateCodeModuleMock(string name, string content, Selec
202203
result.SetupProperty(m => m.Name, name);
203204

204205
codePane.SetupGet(m => m.CodeModule).Returns(() => result.Object);
206+
207+
result.Setup(m => m.AddFromFile(It.IsAny<string>()));
208+
result.Setup(m => m.AddFromString(It.IsAny<string>()));
205209
return result;
206210
}
207211

0 commit comments

Comments
 (0)