Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Run tests on multiple frameworks #808

Merged
merged 6 commits into from
Apr 7, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
sudo: false
dist: xenial
language: csharp
dotnet: 3.1
mono: none
dotnet: 3.1.102

addons:
apt:
Expand All @@ -14,7 +14,7 @@ addons:

env:
global:
- RABBITMQ_VERSION=3.8.2
- RABBITMQ_VERSION=3.8.3
- RABBITMQ_DOWNLOAD_URL="https://github.com/rabbitmq/rabbitmq-server/releases/download/v$RABBITMQ_VERSION/rabbitmq-server-generic-unix-$RABBITMQ_VERSION.tar.xz"
- RABBITMQ_TAR="rabbitmq-$RABBITMQ_VERSION.tar.xz"

Expand Down
1 change: 1 addition & 0 deletions projects/Unit/Fixtures.cs
Original file line number Diff line number Diff line change
Expand Up @@ -699,6 +699,7 @@ public static string CertificatesDirectory()
public class TimingFixture
{
public static readonly TimeSpan TimingInterval = TimeSpan.FromMilliseconds(300);
public static readonly TimeSpan TimingInterval_2X = TimeSpan.FromMilliseconds(600);
public static readonly TimeSpan SafetyMargin = TimeSpan.FromMilliseconds(150);
public static readonly TimeSpan TestTimeout = TimeSpan.FromSeconds(5);
}
Expand Down
6 changes: 3 additions & 3 deletions projects/Unit/TestBlockingCell.cs
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ public void TestBackgroundUpdateSucceeds()
SetAfter(TimingInterval, k, 123);

ResetTimer();
int v = k.WaitForValue(TimingInterval * 2);
int v = k.WaitForValue(TimingInterval_2X);
Assert.Less(TimingInterval - SafetyMargin, ElapsedMs());
Assert.AreEqual(123, v);
}
Expand All @@ -152,7 +152,7 @@ public void TestBackgroundUpdateSucceedsWithTimeSpan()
SetAfter(TimingInterval, k, 123);

ResetTimer();
int v = k.WaitForValue(TimingInterval * 2);
int v = k.WaitForValue(TimingInterval_2X);
Assert.Less(TimingInterval - SafetyMargin, ElapsedMs());
Assert.AreEqual(123, v);
}
Expand All @@ -174,7 +174,7 @@ public void TestBackgroundUpdateSucceedsWithInfiniteTimeoutTimeSpan()
public void TestBackgroundUpdateFails()
{
var k = new BlockingCell<int>();
SetAfter(TimingInterval * 2, k, 123);
SetAfter(TimingInterval_2X, k, 123);

ResetTimer();
Assert.Throws<TimeoutException>(() => k.WaitForValue(TimingInterval));
Expand Down
22 changes: 11 additions & 11 deletions projects/Unit/TestSharedQueue.cs
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ public TimeSpan ElapsedMs()
public void TestBgLong()
{
var q = new SharedQueue();
EnqueueAfter(TimingInterval*2, q, 123);
EnqueueAfter(TimingInterval_2X, q, 123);

ResetTimer();
bool r = q.Dequeue(TimingInterval, out object v);
Expand All @@ -147,7 +147,7 @@ public void TestBgShort()
EnqueueAfter(TimingInterval, q, 123);

ResetTimer();
bool r = q.Dequeue(TimingInterval * 2, out object v);
bool r = q.Dequeue(TimingInterval_2X, out object v);
Assert.Less(TimingInterval - SafetyMargin, ElapsedMs());
Assert.IsTrue(r);
Assert.AreEqual(123, v);
Expand Down Expand Up @@ -237,20 +237,20 @@ public void TestDoubleBg()
{
var q = new SharedQueue();
EnqueueAfter(TimingInterval, q, 123);
EnqueueAfter(TimingInterval*2, q, 234);
EnqueueAfter(TimingInterval_2X, q, 234);

ResetTimer();
bool r;

r = q.Dequeue(TimingInterval * 2, out object v);
r = q.Dequeue(TimingInterval_2X, out object v);
Assert.Less(TimingInterval - SafetyMargin, ElapsedMs());
Assert.Greater(TimingInterval + SafetyMargin, ElapsedMs());
Assert.IsTrue(r);
Assert.AreEqual(123, v);

r = q.Dequeue(TimingInterval * 2, out v);
Assert.Less(TimingInterval*2 - SafetyMargin, ElapsedMs());
Assert.Greater(TimingInterval*2 + SafetyMargin, ElapsedMs());
r = q.Dequeue(TimingInterval_2X, out v);
Assert.Less(TimingInterval_2X - SafetyMargin, ElapsedMs());
Assert.Greater(TimingInterval_2X + SafetyMargin, ElapsedMs());
Assert.IsTrue(r);
Assert.AreEqual(234, v);
}
Expand All @@ -259,7 +259,7 @@ public void TestDoubleBg()
public void TestDoublePoll()
{
var q = new SharedQueue();
EnqueueAfter(TimingInterval*2, q, 123);
EnqueueAfter(TimingInterval_2X, q, 123);

ResetTimer();
bool r;
Expand All @@ -270,9 +270,9 @@ public void TestDoublePoll()
Assert.IsTrue(!r);
Assert.AreEqual(null, v);

r = q.Dequeue(TimingInterval * 2, out v);
Assert.Less(TimingInterval*2 - SafetyMargin, ElapsedMs());
Assert.Greater(TimingInterval*2 + SafetyMargin, ElapsedMs());
r = q.Dequeue(TimingInterval_2X, out v);
Assert.Less(TimingInterval_2X - SafetyMargin, ElapsedMs());
Assert.Greater(TimingInterval_2X + SafetyMargin, ElapsedMs());
Assert.IsTrue(r);
Assert.AreEqual(123, v);
}
Expand Down
3 changes: 2 additions & 1 deletion projects/Unit/Unit.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<TargetFrameworks>net461;netcoreapp3.1</TargetFrameworks>
<AssemblyOriginatorKeyFile>../rabbit.snk</AssemblyOriginatorKeyFile>
<SignAssembly>true</SignAssembly>
</PropertyGroup>
Expand All @@ -13,6 +13,7 @@
<ItemGroup>
<PackageReference Include="ApprovalTests" Version="4.5.2" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.5.0" />
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.0" />
<PackageReference Include="NUnit" Version="3.12.0" />
<PackageReference Include="NUnit3TestAdapter" Version="3.16.1" />
<PackageReference Include="PublicApiGenerator" Version="10.0.2" />
Expand Down
2 changes: 1 addition & 1 deletion run-test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@ fi

cd "$script_dir"

dotnet test --no-build --logger 'console;verbosity=detailed' ./RabbitMQDotNetClient.sln < /dev/null
dotnet test --no-build --logger 'console;verbosity=detailed' --framework 'netcoreapp3.1' ./RabbitMQDotNetClient.sln < /dev/null