Bladeren bron

add SnowflakeId unit tests

master
Savorboard 6 jaren geleden
bovenliggende
commit
7644344d0f
1 gewijzigde bestanden met toevoegingen van 35 en 0 verwijderingen
  1. +35
    -0
      test/DotNetCore.CAP.Test/SnowflakeIdTest.cs

+ 35
- 0
test/DotNetCore.CAP.Test/SnowflakeIdTest.cs Bestand weergeven

@@ -0,0 +1,35 @@
using System.Linq;
using System.Threading.Tasks;
using DotNetCore.CAP.Infrastructure;
using Xunit;

namespace DotNetCore.CAP.Test
{
public class SnowflakeIdTest
{
[Fact]
public void NextIdTest()
{
var result = SnowflakeId.Default().NextId();

Assert.IsType<long>(result);
Assert.True(result > 0);
Assert.True(result.ToString().Length == long.MaxValue.ToString().Length);
}

[Fact]
public void ConcurrentNextIdTest()
{
var array = new long[1000];

Parallel.For(0, 1000, i =>
{
var id = SnowflakeId.Default().NextId();
array[i] = id;
});

Assert.True(array.Distinct().Count() == 1000);
}

}
}

Laden…
Annuleren
Opslaan