Przeglądaj źródła

add SnowflakeId unit tests

master
Savorboard 6 lat temu
rodzic
commit
7644344d0f
1 zmienionych plików z 35 dodań i 0 usunięć
  1. +35
    -0
      test/DotNetCore.CAP.Test/SnowflakeIdTest.cs

+ 35
- 0
test/DotNetCore.CAP.Test/SnowflakeIdTest.cs Wyświetl plik

@@ -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);
}

}
}

Ładowanie…
Anuluj
Zapisz