Skip to content

Commit c4b28cb

Browse files
Merge pull request #65 from christianhelle/improve-code-quality
Improve code quality
2 parents 2199ced + abbf548 commit c4b28cb

25 files changed

+79
-95
lines changed

src/ApiClientCodeGen.Tests/Generators/CodeGeneratorFactoryTests.cs

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
1+
using System;
2+
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
23
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Generators;
34
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Generators.AutoRest;
45
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Generators.NSwag;
@@ -23,6 +24,9 @@ public class CodeGeneratorFactoryTests
2324
public void Init()
2425
{
2526
var mockFactory = new Mock<IOptionsFactory>();
27+
mockFactory
28+
.Setup(c => c.Create<IAutoRestOptions, AutoRestOptionsPage>())
29+
.Returns(Test.CreateDummy<IAutoRestOptions>());
2630
mockFactory
2731
.Setup(c => c.Create<INSwagOptions, NSwagOptionsPage>())
2832
.Returns(Test.CreateDummy<INSwagOptions>());
@@ -79,5 +83,17 @@ public void Can_Create_OpenApiCodeGenerator()
7983
SupportedCodeGenerator.OpenApi)
8084
.Should()
8185
.BeOfType<OpenApiCSharpCodeGenerator>();
86+
87+
[TestMethod]
88+
public void Create_NSwagStudio_Throws_NotSupported()
89+
=> new Action(
90+
() => sut.Create(
91+
string.Empty,
92+
string.Empty,
93+
string.Empty,
94+
SupportedLanguage.CSharp,
95+
SupportedCodeGenerator.NSwagStudio))
96+
.Should()
97+
.ThrowExactly<NotSupportedException>();
8298
}
8399
}

src/ApiClientCodeGen.Tests/Generators/NSwag/NSwagCSharpCodeGeneratorTests.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,6 @@ public async Task Init()
3535

3636
var sut = new NSwagCSharpCodeGenerator(
3737
"Swagger.json",
38-
Test.CreateAnnonymous<string>(),
39-
optionsMock.Object,
4038
documentFactoryMock.Object,
4139
settingsMock.Object);
4240

src/ApiClientCodeGen.VSIX/Commands/AddNew/NewAutoRestClientCommand.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
2-
using System.Diagnostics.CodeAnalysis;
1+
using System.Diagnostics.CodeAnalysis;
2+
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
33

44
namespace ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Commands.AddNew
55
{

src/ApiClientCodeGen.VSIX/Commands/AddNew/NewNSwagClientCommand.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
2-
using System.Diagnostics.CodeAnalysis;
1+
using System.Diagnostics.CodeAnalysis;
2+
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
33

44
namespace ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Commands.AddNew
55
{

src/ApiClientCodeGen.VSIX/Commands/AddNew/NewNSwagStudioClientCommand.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
2-
using System.Diagnostics.CodeAnalysis;
1+
using System.Diagnostics.CodeAnalysis;
2+
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
33

44
namespace ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Commands.AddNew
55
{

src/ApiClientCodeGen.VSIX/Commands/AddNew/NewOpenApiClientCommand.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
2-
using System.Diagnostics.CodeAnalysis;
1+
using System.Diagnostics.CodeAnalysis;
2+
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
33

44
namespace ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Commands.AddNew
55
{

src/ApiClientCodeGen.VSIX/Commands/AddNew/NewRestClientCommand.cs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,11 @@
66
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
77
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Extensions;
88
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Generators.NSwagStudio;
9-
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Options;
109
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Options.General;
11-
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Options.NSwag;
1210
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Options.NSwagStudio;
1311
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Windows;
1412
using EnvDTE;
1513
using Microsoft.VisualStudio.Shell;
16-
using Microsoft.VisualStudio.Threading;
1714
using Newtonsoft.Json;
1815
using VSLangProj;
1916
using Task = System.Threading.Tasks.Task;
@@ -104,4 +101,4 @@ private static string FindFolder(object item, DTE dte)
104101
}
105102
}
106103
}
107-
}
104+
}

src/ApiClientCodeGen.VSIX/Commands/AddNew/NewSwaggerClientCommand.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
2-
using System.Diagnostics.CodeAnalysis;
1+
using System.Diagnostics.CodeAnalysis;
2+
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
33

44
namespace ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Commands.AddNew
55
{

src/ApiClientCodeGen.VSIX/Commands/NSwagStudio/NSwagStudioCommand.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Core;
55
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Extensions;
66
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Generators.NSwagStudio;
7-
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Options;
87
using ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Options.General;
98
using EnvDTE;
109
using Microsoft.VisualStudio.Shell;
@@ -38,9 +37,9 @@ private static async Task OnExecuteAsync(DTE dte, AsyncPackage package)
3837
var nswagStudioFile = item.FileNames[0];
3938
var codeGenerator = new NSwagStudioCodeGenerator(nswagStudioFile, new CustomPathOptions());
4039
codeGenerator.GenerateCode(null);
41-
40+
4241
var project = ProjectExtensions.GetActiveProject(dte);
4342
await project.InstallMissingPackagesAsync(package, SupportedCodeGenerator.NSwag);
4443
}
4544
}
46-
}
45+
}
Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System;
2+
using System.Collections.Generic;
23
using System.Runtime.InteropServices;
34
using System.Text;
45
using Newtonsoft.Json;
@@ -9,18 +10,12 @@ namespace ChristianHelle.DeveloperTools.CodeGenerators.ApiClient.Extensions
910
{
1011
public static class StringExtension
1112
{
12-
private static readonly JsonSerializerSettings jsonSettings;
13-
14-
static StringExtension()
13+
private static readonly JsonSerializerSettings JsonSettings = new JsonSerializerSettings
1514
{
16-
jsonSettings = new JsonSerializerSettings
17-
{
18-
NullValueHandling = NullValueHandling.Ignore,
19-
ContractResolver = new CamelCasePropertyNamesContractResolver()
20-
};
21-
22-
jsonSettings.Converters.Add(new StringEnumConverter());
23-
}
15+
NullValueHandling = NullValueHandling.Ignore,
16+
ContractResolver = new CamelCasePropertyNamesContractResolver(),
17+
Converters = new List<JsonConverter> { new StringEnumConverter() }
18+
};
2419

2520
public static IntPtr ConvertToIntPtr(this string code, out uint pcbOutput)
2621
{
@@ -36,6 +31,6 @@ public static IntPtr ConvertToIntPtr(this string code, out uint pcbOutput)
3631
public static string ToJson(this object value)
3732
=> JsonConvert.SerializeObject(
3833
value,
39-
jsonSettings);
34+
JsonSettings);
4035
}
4136
}

0 commit comments

Comments
 (0)