Skip to content

Commit ccd51b1

Browse files
committed
Give Rubberduck.UnitTesting its stuff back. Closes #4365, #4220, and #3879. Ref #4702
1 parent 95c6934 commit ccd51b1

27 files changed

+652
-364
lines changed

Rubberduck.Core/Properties/Settings.Designer.cs

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Rubberduck.Core/Settings/ConfigurationLoader.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using System.Linq;
33
using Rubberduck.SettingsProvider;
44
using Rubberduck.SmartIndenter;
5+
using Rubberduck.UnitTesting.Settings;
56

67
namespace Rubberduck.Settings
78
{

Rubberduck.Core/Settings/UserSettings.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using System.Xml.Serialization;
22
using Rubberduck.SmartIndenter;
3+
using Rubberduck.UnitTesting.Settings;
34

45
namespace Rubberduck.Settings
56
{

Rubberduck.Core/UI/CodeExplorer/Commands/AddTestComponentCommand.cs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
using System;
22
using System.Linq;
33
using System.Runtime.InteropServices;
4-
using Rubberduck.Interaction;
54
using Rubberduck.Navigation.CodeExplorer;
65
using Rubberduck.Parsing.VBA;
7-
using Rubberduck.Settings;
86
using Rubberduck.UI.UnitTesting.Commands;
9-
using Rubberduck.UnitTesting;
7+
using Rubberduck.UnitTesting.UnitTesting;
108
using Rubberduck.VBEditor.SafeComWrappers.Abstract;
119

1210
namespace Rubberduck.UI.CodeExplorer.Commands
@@ -21,8 +19,8 @@ public class AddTestComponentCommand : AddTestModuleCommand
2119
typeof(CodeExplorerMemberViewModel)
2220
};
2321

24-
public AddTestComponentCommand(IVBE vbe, RubberduckParserState state, IGeneralConfigService configLoader, IMessageBox messageBox, IVBEInteraction interaction)
25-
: base(vbe, state, configLoader, messageBox, interaction) { }
22+
public AddTestComponentCommand(IVBE vbe, RubberduckParserState state, ITestCodeGenerator codeGenerator)
23+
: base(vbe, state, codeGenerator) { }
2624

2725
protected override bool EvaluateCanExecute(object parameter)
2826
{

Rubberduck.Core/UI/Settings/Converters/AssertModeToTextConverter.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
using System.Linq;
55
using System.Windows.Data;
66
using Rubberduck.Resources.Settings;
7+
using Rubberduck.UnitTesting.Settings;
78

89

910
namespace Rubberduck.UI.Settings.Converters
@@ -12,7 +13,7 @@ public class AssertModeToTextConverter : IValueConverter
1213
{
1314
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
1415
{
15-
var modes = (IEnumerable<Rubberduck.Settings.AssertMode>)value;
16+
var modes = (IEnumerable<AssertMode>)value;
1617
return modes.Select(s => UnitTestingPage.ResourceManager.GetString("UnitTestSettings_" + s, CultureInfo.CurrentUICulture)).ToArray();
1718
}
1819

Rubberduck.Core/UI/Settings/Converters/AssertModeValueToTextConverter.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
using System;
22
using System.Globalization;
33
using System.Windows.Data;
4-
using Rubberduck.Settings;
54
using Rubberduck.Resources.Settings;
5+
using Rubberduck.UnitTesting.Settings;
66

77
namespace Rubberduck.UI.Settings.Converters
88
{
99
public class AssertModeValueToTextConverter : IValueConverter
1010
{
1111
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
1212
{
13-
var mode = (Rubberduck.Settings.AssertMode)value;
13+
var mode = (AssertMode)value;
1414
switch (mode)
1515
{
1616
case AssertMode.StrictAssert:

Rubberduck.Core/UI/Settings/Converters/BindingModeToTextConverter.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
using System.Linq;
55
using System.Windows.Data;
66
using Rubberduck.Resources.Settings;
7+
using BindingMode = Rubberduck.UnitTesting.Settings.BindingMode;
78

89

910
namespace Rubberduck.UI.Settings.Converters
@@ -12,7 +13,7 @@ public class BindingModeToTextConverter : IValueConverter
1213
{
1314
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
1415
{
15-
var modes = (IEnumerable<Rubberduck.Settings.BindingMode>)value;
16+
var modes = (IEnumerable<BindingMode>)value;
1617
return modes.Select(s => UnitTestingPage.ResourceManager.GetString("UnitTestSettings_" + s, CultureInfo.CurrentUICulture)).ToArray();
1718
}
1819

Rubberduck.Core/UI/Settings/Converters/BindingModeValueToTextConverter.cs

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,23 @@
22
using System.Globalization;
33
using System.Windows.Data;
44
using Rubberduck.Resources.Settings;
5+
using BindingMode = Rubberduck.UnitTesting.Settings.BindingMode;
56

67
namespace Rubberduck.UI.Settings.Converters
78
{
89
public class BindingModeValueToTextConverter : IValueConverter
910
{
1011
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
1112
{
12-
var mode = (Rubberduck.Settings.BindingMode)value;
13+
var mode = (BindingMode)value;
1314
switch (mode)
1415
{
15-
case Rubberduck.Settings.BindingMode.EarlyBinding:
16+
case BindingMode.EarlyBinding:
1617
return UnitTestingPage.UnitTestSettings_EarlyBinding;
17-
case Rubberduck.Settings.BindingMode.LateBinding:
18+
case BindingMode.LateBinding:
1819
return UnitTestingPage.UnitTestSettings_LateBinding;
20+
case BindingMode.DualBinding:
21+
return UnitTestingPage.UnitTestSettings_DualBinding;
1922
default:
2023
return value;
2124
}
@@ -24,9 +27,15 @@ public object Convert(object value, Type targetType, object parameter, CultureIn
2427
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
2528
{
2629
var text = (string)value;
27-
return text == UnitTestingPage.UnitTestSettings_EarlyBinding
28-
? Rubberduck.Settings.BindingMode.EarlyBinding
29-
: Rubberduck.Settings.BindingMode.LateBinding;
30+
31+
if (UnitTestingPage.UnitTestSettings_EarlyBinding.Equals(text))
32+
{
33+
return BindingMode.EarlyBinding;
34+
}
35+
36+
return UnitTestingPage.UnitTestSettings_LateBinding.Equals(text)
37+
? BindingMode.LateBinding
38+
: BindingMode.DualBinding;
3039
}
3140
}
3241
}

Rubberduck.Core/UI/Settings/UnitTestSettings.xaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
55
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
66
xmlns:settings="clr-namespace:Rubberduck.UI.Settings"
7-
xmlns:settingsConfig="clr-namespace:Rubberduck.Settings"
87
xmlns:converters="clr-namespace:Rubberduck.UI.Settings.Converters"
98
xmlns:core="clr-namespace:System;assembly=mscorlib"
109
xmlns:controls="clr-namespace:Rubberduck.UI.Controls"
10+
xmlns:settingsConfig="clr-namespace:Rubberduck.UnitTesting.Settings;assembly=Rubberduck.UnitTesting"
1111
mc:Ignorable="d"
1212
d:DesignHeight="300" d:DesignWidth="300"
1313
d:DataContext="{d:DesignInstance {x:Type settings:UnitTestSettingsViewModel}, IsDesignTimeCreatable=False}">

Rubberduck.Core/UI/Settings/UnitTestSettingsViewModel.cs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using Rubberduck.SettingsProvider;
44
using Rubberduck.UI.Command;
55
using Rubberduck.Resources.Settings;
6+
using Rubberduck.UnitTesting.Settings;
67

78
namespace Rubberduck.UI.Settings
89
{
@@ -107,7 +108,7 @@ public void SetToDefaults(Configuration config)
107108
TransferSettingsToView(config.UserSettings.UnitTestSettings);
108109
}
109110

110-
private void TransferSettingsToView(Rubberduck.Settings.UnitTestSettings toLoad)
111+
private void TransferSettingsToView(Rubberduck.UnitTesting.Settings.UnitTestSettings toLoad)
111112
{
112113
BindingMode = toLoad.BindingMode;
113114
AssertMode = toLoad.AssertMode;
@@ -126,8 +127,8 @@ private void ImportSettings()
126127
{
127128
dialog.ShowDialog();
128129
if (string.IsNullOrEmpty(dialog.FileName)) return;
129-
var service = new XmlPersistanceService<Rubberduck.Settings.UnitTestSettings> { FilePath = dialog.FileName };
130-
var loaded = service.Load(new Rubberduck.Settings.UnitTestSettings());
130+
var service = new XmlPersistanceService<Rubberduck.UnitTesting.Settings.UnitTestSettings> { FilePath = dialog.FileName };
131+
var loaded = service.Load(new Rubberduck.UnitTesting.Settings.UnitTestSettings());
131132
TransferSettingsToView(loaded);
132133
}
133134
}
@@ -142,8 +143,8 @@ private void ExportSettings()
142143
{
143144
dialog.ShowDialog();
144145
if (string.IsNullOrEmpty(dialog.FileName)) return;
145-
var service = new XmlPersistanceService<Rubberduck.Settings.UnitTestSettings> { FilePath = dialog.FileName };
146-
service.Save(new Rubberduck.Settings.UnitTestSettings(BindingMode, AssertMode, ModuleInit, MethodInit, DefaultTestStubInNewModule));
146+
var service = new XmlPersistanceService<Rubberduck.UnitTesting.Settings.UnitTestSettings> { FilePath = dialog.FileName };
147+
service.Save(new Rubberduck.UnitTesting.Settings.UnitTestSettings(BindingMode, AssertMode, ModuleInit, MethodInit, DefaultTestStubInNewModule));
147148
}
148149
}
149150
}

0 commit comments

Comments
 (0)