Skip to content

Commit 993165f

Browse files
committed
V9 multi-target updates.
Fix unit tests.
1 parent 6a5b1ec commit 993165f

19 files changed

+273
-123
lines changed

src/Umbraco.Cms.Integrations.Crm.Hubspot.Tests/Controllers/FormsControllerTests.cs

Lines changed: 25 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,11 @@ public class FormsControllerTests
5151
]
5252
}";
5353

54-
private Mock<IAppSettings> MockedAppSettingsApiSetup;
54+
private HubspotSettings MockedAppSettingsApiSetup;
5555

56-
private Mock<IAppSettings> MockedAppSettingsOAuthSetup;
56+
private HubspotSettings MockedAppSettingsOAuthSetup;
5757

58-
private Mock<IAppSettings> MockedAppSettingsNoSetup;
58+
private HubspotSettings MockedAppSettingsNoSetup;
5959

6060
private Mock<ILogger> MockedLogger;
6161

@@ -81,7 +81,8 @@ public void Init()
8181
[Test]
8282
public void CheckApiConfiguration_WithApiConfig_ShouldReturnValidConfigurationResponseObjectWithType()
8383
{
84-
var sut = new FormsController(MockedAppSettingsApiSetup.Object, Mock.Of<ITokenService>(), Mock.Of<ILogger>());
84+
var sut = new FormsController(Mock.Of<ITokenService>(), Mock.Of<ILogger>());
85+
sut.Options = MockedAppSettingsApiSetup;
8586

8687
var result = sut.CheckConfiguration();
8788

@@ -92,7 +93,8 @@ public void CheckApiConfiguration_WithApiConfig_ShouldReturnValidConfigurationRe
9293
[Test]
9394
public void CheckOAuthConfiguration_WithOAuthConfigAndNoApiConfig_ShouldReturnValidConfigurationResponseObjectWithType()
9495
{
95-
var sut = new FormsController(MockedAppSettingsOAuthSetup.Object, Mock.Of<ITokenService>(), Mock.Of<ILogger>());
96+
var sut = new FormsController(Mock.Of<ITokenService>(), Mock.Of<ILogger>());
97+
sut.Options = MockedAppSettingsOAuthSetup;
9698

9799
var result = sut.CheckConfiguration();
98100

@@ -107,7 +109,8 @@ public void CheckOAuthConfiguration_WithOAuthConfigAndNoApiConfig_ShouldReturnVa
107109
[Test]
108110
public async Task GetAll_WithoutApiKey_ShouldReturnInvalidResponseObjectWithLoggedInfo()
109111
{
110-
var sut = new FormsController(Mock.Of<IAppSettings>(), Mock.Of<ITokenService>(), MockedLogger.Object);
112+
var sut = new FormsController(Mock.Of<ITokenService>(), MockedLogger.Object);
113+
sut.Options = MockedAppSettingsNoSetup;
111114

112115
var result = await sut.GetAll();
113116

@@ -120,7 +123,8 @@ public async Task GetAll_WithoutApiKey_ShouldReturnInvalidResponseObjectWithLogg
120123
[Test]
121124
public async Task GetAll_WithUnauthorizedRequest_ShouldReturnExpiredResponseObjectWithLoggedError()
122125
{
123-
var sut = new FormsController(MockedAppSettingsApiSetup.Object, Mock.Of<ITokenService>(), MockedLogger.Object);
126+
var sut = new FormsController(Mock.Of<ITokenService>(), MockedLogger.Object);
127+
sut.Options = MockedAppSettingsApiSetup;
124128

125129
var httpClient = CreateMockedHttpClient(HttpStatusCode.Unauthorized, InvalidApiKey);
126130
FormsController.ClientFactory = () => httpClient;
@@ -136,7 +140,8 @@ public async Task GetAll_WithUnauthorizedRequest_ShouldReturnExpiredResponseObje
136140
[Test]
137141
public async Task GetAll_WithSuccessfulRequest_ShouldReturnResponseObjectWithFormsCollection()
138142
{
139-
var sut = new FormsController(MockedAppSettingsApiSetup.Object, Mock.Of<ITokenService>(), MockedLogger.Object);
143+
var sut = new FormsController(Mock.Of<ITokenService>(), MockedLogger.Object);
144+
sut.Options = MockedAppSettingsApiSetup;
140145

141146
var response = File.ReadAllText(TestContext.CurrentContext.TestDirectory + "\\Data\\mockResponseApiSetup.json");
142147

@@ -153,7 +158,8 @@ public async Task GetAll_WithSuccessfulRequest_ShouldReturnResponseObjectWithFor
153158
[Test]
154159
public async Task GetAll_WithFailedRequest_ShouldReturnDefaultResponseObjectWithLoggedError()
155160
{
156-
var sut = new FormsController(MockedAppSettingsApiSetup.Object, Mock.Of<ITokenService>(), MockedLogger.Object);
161+
var sut = new FormsController(Mock.Of<ITokenService>(), MockedLogger.Object);
162+
sut.Options = MockedAppSettingsApiSetup;
157163

158164
var response = File.ReadAllText(TestContext.CurrentContext.TestDirectory + "\\Data\\mockResponseApiSetup.json");
159165

@@ -178,7 +184,7 @@ public async Task GetAllOAuth_WithoutAccessToken_ShouldReturnInvalidResponseObje
178184
{
179185
var mockedTokenService = CreateMockedTokenService(false);
180186

181-
var sut = new FormsController(Mock.Of<IAppSettings>(), mockedTokenService.Object, MockedLogger.Object);
187+
var sut = new FormsController(mockedTokenService.Object, MockedLogger.Object);
182188

183189
var result = await sut.GetAllOAuth();
184190

@@ -193,7 +199,7 @@ public async Task GetAllOAuth_WithUnauthorizedRequest_ShouldReturnExpiredRespons
193199
{
194200
var mockedTokenService = CreateMockedTokenService(true);
195201

196-
var sut = new FormsController(MockedAppSettingsApiSetup.Object, mockedTokenService.Object, MockedLogger.Object);
202+
var sut = new FormsController(mockedTokenService.Object, MockedLogger.Object);
197203

198204
var httpClient = CreateMockedHttpClient(HttpStatusCode.Unauthorized);
199205
FormsController.ClientFactory = () => httpClient;
@@ -211,14 +217,14 @@ public async Task GetAllOAuth_WithSuccessfulRequest_ShouldReturnResponseObjectWi
211217
{
212218
var mockedTokenService = CreateMockedTokenService(true);
213219

214-
var sut = new FormsController(MockedAppSettingsApiSetup.Object, mockedTokenService.Object, MockedLogger.Object);
220+
var sut = new FormsController(mockedTokenService.Object, MockedLogger.Object);
215221

216222
var response = File.ReadAllText(TestContext.CurrentContext.TestDirectory + "\\Data\\mockResponseOAuthSetup.json");
217223

218224
var httpClient = CreateMockedHttpClient(HttpStatusCode.OK, response);
219225
FormsController.ClientFactory = () => httpClient;
220226

221-
var result = await sut.GetAll();
227+
var result = await sut.GetAllOAuth();
222228

223229
Assert.That(result.IsValid, Is.True);
224230
Assert.That(result.IsExpired, Is.False);
@@ -230,14 +236,14 @@ public async Task GetAllOAuth_WithFailedRequest_ShouldReturnDefaultResponseObjec
230236
{
231237
var mockedTokenService = CreateMockedTokenService(true);
232238

233-
var sut = new FormsController(MockedAppSettingsApiSetup.Object, mockedTokenService.Object, MockedLogger.Object);
239+
var sut = new FormsController(mockedTokenService.Object, MockedLogger.Object);
234240

235241
var response = File.ReadAllText(TestContext.CurrentContext.TestDirectory + "\\Data\\mockResponseApiSetup.json");
236242

237243
var httpClient = CreateMockedHttpClient(HttpStatusCode.InternalServerError, response);
238244
FormsController.ClientFactory = () => httpClient;
239245

240-
var result = await sut.GetAll();
246+
var result = await sut.GetAllOAuth();
241247

242248
MockedLogger.Verify(x => x.Error(It.Is<Type>(y => y == typeof(FormsController)), It.IsAny<string>()), Times.Once);
243249

@@ -248,18 +254,11 @@ public async Task GetAllOAuth_WithFailedRequest_ShouldReturnDefaultResponseObjec
248254

249255
#endregion
250256

251-
private static Mock<IAppSettings> CreateMockedAppSettings(bool includeApiKeySettings = false)
257+
private static HubspotSettings CreateMockedAppSettings(bool includeApiKeySettings = false)
252258
{
253-
var mockedAppSettings = new Mock<IAppSettings>();
254-
255-
if (includeApiKeySettings)
256-
{
257-
mockedAppSettings
258-
.Setup(c => c[AppSettingsConstants.UmbracoCmsIntegrationsCrmHubspotApiKey])
259-
.Returns("test-api-key");
260-
}
261-
262-
return mockedAppSettings;
259+
return includeApiKeySettings
260+
? new HubspotSettings {ApiKey = "test-api-key", Region = "eu1"}
261+
: new HubspotSettings { Region = "eu1" };
263262
}
264263

265264
private static Mock<ITokenService> CreateMockedTokenService(bool includeAccessToken)

src/Umbraco.Cms.Integrations.Crm.Hubspot/Configuration/AppSettingsConstants.cs

Lines changed: 0 additions & 10 deletions
This file was deleted.

src/Umbraco.Cms.Integrations.Crm.Hubspot/Configuration/AppSettingsWrapper.cs

Lines changed: 0 additions & 17 deletions
This file was deleted.
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
using System.Collections.Specialized;
2+
3+
namespace Umbraco.Cms.Integrations.Crm.Hubspot.Configuration
4+
{
5+
public class HubspotSettings
6+
{
7+
public HubspotSettings()
8+
{
9+
10+
}
11+
12+
public HubspotSettings(NameValueCollection appSettings)
13+
{
14+
ApiKey = appSettings[Constants.UmbracoCmsIntegrationsCrmHubspotApiKey];
15+
Region = appSettings[Constants.UmbracoCmsIntegrationsCrmHubspotRegion];
16+
}
17+
18+
public string ApiKey { get; set; }
19+
20+
public string Region { get; set; }
21+
}
22+
}

src/Umbraco.Cms.Integrations.Crm.Hubspot/Configuration/IAppSettings.cs

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/Umbraco.Cms.Integrations.Crm.Hubspot/Constants.cs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,20 @@
1-
namespace Umbraco.Cms.Integrations.Crm.Hubspot.Models
1+
namespace Umbraco.Cms.Integrations.Crm.Hubspot
22
{
33
using Newtonsoft.Json;
44
using Newtonsoft.Json.Converters;
55
using System.Globalization;
66

77
public static class Constants
88
{
9+
public const string UmbracoCmsIntegrationsCrmHubspotApiKey = "Umbraco.Cms.Integrations.Crm.Hubspot.ApiKey";
10+
11+
public const string UmbracoCmsIntegrationsCrmHubspotRegion = "Umbraco.Cms.Integrations.Crm.Hubspot.Region";
12+
13+
public static class Configuration
14+
{
15+
public const string Settings = "Umbraco:Cms:Integrations:Crm:Hubspot:Settings";
16+
}
17+
918
internal static readonly JsonSerializerSettings SerializationSettings = new JsonSerializerSettings
1019
{
1120
MetadataPropertyHandling = MetadataPropertyHandling.Ignore,

0 commit comments

Comments
 (0)