Playing with tests
This commit is contained in:
46
SethTests/PluginManagerTests/AppSettingsTests.cs
Normal file
46
SethTests/PluginManagerTests/AppSettingsTests.cs
Normal file
@@ -0,0 +1,46 @@
|
||||
using PluginManager;
|
||||
using Xunit.Abstractions;
|
||||
|
||||
namespace SethTests.PluginManagerTests;
|
||||
|
||||
public class AppSettingsTests
|
||||
{
|
||||
private readonly ITestOutputHelper _testOutputHelper;
|
||||
|
||||
public AppSettingsTests(ITestOutputHelper testOutputHelper)
|
||||
{
|
||||
_testOutputHelper = testOutputHelper;
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void TestAppSettings_ConstructorInitializeTheClassAndFile()
|
||||
{
|
||||
var appSettings = new PluginManager.Others.SettingsDictionary<string, string>("settings.txt");
|
||||
|
||||
Assert.NotNull(appSettings);
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData("key1", "value1")]
|
||||
[InlineData("key2", true)]
|
||||
public void TestAppSettings_InsertingValueIntoSettings(string keyName, object value)
|
||||
{
|
||||
var appSettings = new PluginManager.Others.SettingsDictionary<string, object>("settings.txt");
|
||||
|
||||
appSettings[keyName] = value;
|
||||
Assert.True(appSettings.ContainsKey(keyName));
|
||||
}
|
||||
|
||||
[Theory]
|
||||
//[InlineData("key2", 32)] // fails
|
||||
[InlineData("key1", "value1")]
|
||||
public void TestAppSettings_GettingTheValueFromSettings(string keyName, object value)
|
||||
{
|
||||
var appSettings = new PluginManager.Others.SettingsDictionary<string, object>("settings.txt");
|
||||
|
||||
appSettings[keyName] = value;
|
||||
|
||||
Assert.Same(appSettings[keyName], value);
|
||||
}
|
||||
|
||||
}
|
||||
33
SethTests/SethTests.csproj
Normal file
33
SethTests/SethTests.csproj
Normal file
@@ -0,0 +1,33 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
|
||||
<IsPackable>false</IsPackable>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.1.0"/>
|
||||
<PackageReference Include="xunit" Version="2.4.1"/>
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.3">
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="coverlet.collector" Version="3.1.2">
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Folder Include="DiscordBot\" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\DiscordBot\DiscordBot.csproj" />
|
||||
<ProjectReference Include="..\PluginManager\PluginManager.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
1
SethTests/Usings.cs
Normal file
1
SethTests/Usings.cs
Normal file
@@ -0,0 +1 @@
|
||||
global using Xunit;
|
||||
Reference in New Issue
Block a user