Skip to content

Commit b15bfb4

Browse files
hazzikfredericDelaporte
authored andcommitted
Add .NET Standard 2.0 target to RtMemoryCache (#39)
Fixes #38
1 parent c145070 commit b15bfb4

File tree

9 files changed

+79
-17
lines changed

9 files changed

+79
-17
lines changed

RtMemoryCache/NHibernate.Caches.RtMemoryCache.Tests/NHibernate.Caches.RtMemoryCache.Tests.csproj

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,28 @@
33
<PropertyGroup>
44
<Product>NHibernate.Caches.RtMemoryCache</Product>
55
<Description>Unit tests of cache provider for NHibernate using MemoryCache.</Description>
6-
<TargetFramework>net461</TargetFramework>
6+
<TargetFrameworks>net461;netcoreapp2.0</TargetFrameworks>
77
<IsTestProject>true</IsTestProject>
88
</PropertyGroup>
9+
<PropertyGroup Condition="'$(TargetFramework)' == 'net461'">
10+
<DefineConstants>NETFX;$(DefineConstants)</DefineConstants>
11+
</PropertyGroup>
12+
<PropertyGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
13+
<OutputType>Exe</OutputType>
14+
<GenerateProgramFile>false</GenerateProgramFile>
15+
</PropertyGroup>
916
<ItemGroup>
1017
<ProjectReference Include="..\..\NHibernate.Caches.Common.Tests\NHibernate.Caches.Common.Tests.csproj" />
1118
<ProjectReference Include="..\NHibernate.Caches.RtMemoryCache\NHibernate.Caches.RtMemoryCache.csproj" />
1219
</ItemGroup>
13-
<ItemGroup>
20+
<ItemGroup Condition=" '$(TargetFramework)' == 'net461' ">
21+
<Reference Include="System.Configuration" />
1422
<Reference Include="System.Runtime.Caching" />
1523
</ItemGroup>
1624
<ItemGroup>
1725
<PackageReference Include="log4net" Version="2.0.8" />
1826
</ItemGroup>
27+
<ItemGroup Condition="'$(TargetFramework)'=='netcoreapp2.0'">
28+
<PackageReference Include="NUnitLite" Version="3.9.0" />
29+
</ItemGroup>
1930
</Project>
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#if !NETFX
2+
namespace NHibernate.Caches.RtMemoryCache.Tests
3+
{
4+
public class Program
5+
{
6+
public static int Main(string[] args)
7+
{
8+
return new NUnitLite.AutoRun(typeof(Program).Assembly).Execute(args);
9+
}
10+
}
11+
}
12+
#endif

RtMemoryCache/NHibernate.Caches.RtMemoryCache.Tests/RtMemoryCacheFixture.cs

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,6 @@ public partial class RtMemoryCacheFixture : CacheFixture
3737
{
3838
protected override bool SupportsSlidingExpiration => true;
3939

40-
protected override void Configure(Dictionary<string, string> defaultProperties)
41-
{
42-
XmlConfigurator.Configure();
43-
base.Configure(defaultProperties);
44-
}
45-
4640
protected override Func<ICacheProvider> ProviderBuilder =>
4741
() => new RtMemoryCacheProvider();
4842

RtMemoryCache/NHibernate.Caches.RtMemoryCache.Tests/RtMemoryCacheProviderFixture.cs

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,12 +34,6 @@ namespace NHibernate.Caches.RtMemoryCache.Tests
3434
[TestFixture]
3535
public class RtMemoryCacheProviderFixture : CacheProviderFixture
3636
{
37-
protected override void Configure(Dictionary<string, string> defaultProperties)
38-
{
39-
XmlConfigurator.Configure();
40-
base.Configure(defaultProperties);
41-
}
42-
4337
protected override Func<ICacheProvider> ProviderBuilder =>
4438
() => new RtMemoryCacheProvider();
4539

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
using log4net.Repository.Hierarchy;
2+
#if !NETFX
3+
using NHibernate.Caches.Common.Tests;
4+
#endif
5+
using NUnit.Framework;
6+
7+
namespace NHibernate.Caches.RtMemoryCache.Tests
8+
{
9+
[SetUpFixture]
10+
public class TestsContext
11+
{
12+
[OneTimeSetUp]
13+
public void RunBeforeAnyTests()
14+
{
15+
#if !NETFX
16+
TestsContextHelper.RunBeforeAnyTests(typeof(TestsContext).Assembly, "coredistributedcache");
17+
#endif
18+
ConfigureLog4Net();
19+
}
20+
21+
#if !NETFX
22+
[OneTimeTearDown]
23+
public void RunAfterAnyTests()
24+
{
25+
TestsContextHelper.RunAfterAnyTests();
26+
}
27+
#endif
28+
29+
private static void ConfigureLog4Net()
30+
{
31+
var hierarchy = (Hierarchy)log4net.LogManager.GetRepository(typeof(TestsContext).Assembly);
32+
33+
var consoleAppender = new log4net.Appender.ConsoleAppender
34+
{
35+
Layout = new log4net.Layout.PatternLayout("%d{ABSOLUTE} %-5p %c{1}:%L - %m%n"),
36+
};
37+
hierarchy.Root.Level = log4net.Core.Level.Info;
38+
hierarchy.Root.AddAppender(consoleAppender);
39+
hierarchy.Configured = true;
40+
}
41+
}
42+
}

RtMemoryCache/NHibernate.Caches.RtMemoryCache/NHibernate.Caches.RtMemoryCache.csproj

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,16 @@
44
<Product>NHibernate.Caches.RtMemoryCache</Product>
55
<Title>NHibernate.Caches.RtMemoryCache</Title>
66
<Description>Cache provider for NHibernate using MemoryCache (System.Runtime.Caching).</Description>
7-
<TargetFramework>net461</TargetFramework>
7+
<TargetFrameworks>net461;netstandard2.0</TargetFrameworks>
88
<SignAssembly>True</SignAssembly>
99
<AssemblyOriginatorKeyFile>..\..\NHibernate.Caches.snk</AssemblyOriginatorKeyFile>
1010
<GenerateDocumentationFile>true</GenerateDocumentationFile>
1111
<PackageReleaseNotes>* Bug
1212
* #48 - Avoid undue cache misses
1313

14+
* New Feature
15+
* #38 - Add a Core RtMemoryCache
16+
1417
* Task
1518
* #46 - Update NHibernate to 5.1.0</PackageReleaseNotes>
1619
</PropertyGroup>
@@ -21,10 +24,14 @@
2124
<ItemGroup>
2225
<PackageReference Include="NHibernate" Version="5.1.0" />
2326
</ItemGroup>
24-
<ItemGroup>
27+
<ItemGroup Condition=" '$(TargetFramework)' == 'net461' ">
2528
<Reference Include="System.Configuration" />
2629
<Reference Include="System.Runtime.Caching" />
2730
</ItemGroup>
31+
<ItemGroup Condition=" '$(TargetFramework)' == 'netstandard2.0' ">
32+
<PackageReference Include="System.Runtime.Caching" Version="4.5.0" />
33+
<PackageReference Include="System.Configuration.ConfigurationManager" Version="4.5.0" />
34+
</ItemGroup>
2835
<ItemGroup>
2936
<Content Include="../../readme.md">
3037
<PackagePath>./NHibernate.Caches.readme.md</PackagePath>

RtMemoryCache/default.build

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
<property name="test.project" value="RtMemoryCache" />
2020
<property name="test.file" value="NHibernate.Caches.RtMemoryCache.Tests" />
2121
<call target="common.run-tests" />
22+
<call target="common.run-core-tests" />
2223
</target>
2324

2425
<target name="clean">

appveyor.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ test_script:
112112
113113
#core tests
114114
If ($env:TESTS -eq 'core') {
115-
@('CoreMemoryCache', 'CoreDistributedCache') | ForEach-Object {
115+
@('CoreMemoryCache', 'CoreDistributedCache', 'RtMemoryCache') | ForEach-Object {
116116
dotnet (Join-Path $env:APPVEYOR_BUILD_FOLDER "$_\NHibernate.Caches.$_.Tests\bin\$env:CONFIGURATION\$env:CORETARGETFX\NHibernate.Caches.$_.Tests.dll") --labels=before --nocolor "--result=$_-CoreTestResult.xml"
117117
If ($LASTEXITCODE -ne 0) {
118118
$TestsFailed = $TRUE

readme.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ It's recommended to research for a while before deciding which one is better for
2727

2828
* New feature
2929
* #47 - Add an option for appending hashcode to key
30+
* #38 - Add a Core RtMemoryCache
3031

3132
* Task
3233
* #46 - Update NHibernate to 5.1.0

0 commit comments

Comments
 (0)