Commit d2a8296d authored by Marc Gravell's avatar Marc Gravell

don't use "foo" as a key name...

parent dc589e4f
using System.Threading.Tasks; using System.Runtime.CompilerServices;
using System.Threading.Tasks;
using Xunit; using Xunit;
using Xunit.Abstractions; using Xunit.Abstractions;
...@@ -15,24 +16,25 @@ public void ValueEquals() ...@@ -15,24 +16,25 @@ public void ValueEquals()
Assert.True(x.Equals(y), "equals"); Assert.True(x.Equals(y), "equals");
Assert.True(x == y, "operator"); Assert.True(x == y, "operator");
} }
static RedisKey Me([CallerMemberName] string caller = null) => caller;
[Fact] [Fact]
public void TestManualIncr() public void TestManualIncr()
{ {
using (var muxer = GetUnsecuredConnection(syncTimeout: 120000)) // big timeout while debugging using (var muxer = GetUnsecuredConnection(syncTimeout: 120000)) // big timeout while debugging
{ {
var key = Me();
var conn = muxer.GetDatabase(0); var conn = muxer.GetDatabase(0);
for (int i = 0; i < 200; i++) for (int i = 0; i < 200; i++)
{ {
conn.KeyDelete("foo"); conn.KeyDelete(key);
Assert.Equal(1, conn.Wait(ManualIncr(conn, "foo"))); Assert.Equal(1, conn.Wait(ManualIncr(conn, key)));
Assert.Equal(2, conn.Wait(ManualIncr(conn, "foo"))); Assert.Equal(2, conn.Wait(ManualIncr(conn, key)));
Assert.Equal(2, (long)conn.StringGet("foo")); Assert.Equal(2, (long)conn.StringGet(key));
} }
} }
} }
public async Task<long?> ManualIncr(IDatabase connection, string key) public async Task<long?> ManualIncr(IDatabase connection, RedisKey key)
{ {
var oldVal = (long?)await connection.StringGetAsync(key).ForAwait(); var oldVal = (long?)await connection.StringGetAsync(key).ForAwait();
var newVal = (oldVal ?? 0) + 1; var newVal = (oldVal ?? 0) + 1;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment