protected void GetAssertPass <T>(IGetOperationResult <T> result, T expectedValue) { Assert.True(result.Success, "Success was false"); Assert.True(result.Cas > 0, "Cas value was 0"); Assert.True((result.StatusCode ?? 0) == 0, "StatusCode was neither 0 nor null"); Assert.Equal(expectedValue, result.Value); }
protected void GetAssertPass(IGetOperationResult result, object expectedValue) { Assert.That(result.Success, Is.True, "Success was false"); Assert.That(result.Cas, Is.GreaterThan(0), "Cas value was 0"); Assert.That(result.StatusCode, Is.EqualTo(0).Or.Null, "StatusCode was neither 0 nor null"); Assert.That(result.Value, Is.EqualTo(expectedValue), "Actual value was not expected value: " + result.Value); }
protected override IGetOperationResult PerformTryGet(string key, out ulong cas, out object value) { string str = base.KeyTransformer.Transform(key); IMemcachedNode startNode = base.Pool.Locate(str); IGetOperationResult source = base.GetOperationResultFactory.Create(); if (startNode != null) { IGetOperation op = base.Pool.OperationFactory.Get(str); IOperationResult result2 = this.ExecuteWithRedirect(startNode, op); if (result2.Success) { source.Value = value = op.Result.Data; // base.Transcoder.Deserialize(op.Result); source.Cas = cas = op.CasValue; if (base.PerformanceMonitor != null) { base.PerformanceMonitor.Get(1, true); } source.Pass(null); return(source); } value = null; cas = 0L; result2.Combine(source); return(source); } value = null; cas = 0L; if (base.PerformanceMonitor != null) { base.PerformanceMonitor.Get(1, false); } source.Fail("Unable to locate node", null); return(source); }
public static void GetAssertPass(IGetOperationResult result, object expectedValue) { Assert.That(result.Success, Is.True, "Success was false"); Assert.That(result.Cas, Is.GreaterThan(0), "Cas value was 0"); Assert.That(result.StatusCode, Is.EqualTo(0).Or.Null, "StatusCode was neither 0 nor null"); Assert.That(result.Value, Is.EqualTo(expectedValue), "Actual value was not expected value: " + result.Value); }
/// <summary> /// 如果该键不存在,则通过使用指定的函数将键/值对添加到 Memcached 中。 如果该键存在,则返回新值或现有值。 /// </summary> /// <param name="key">要添加的元素的键。</param> /// <param name="valueFactory">用于为键生成值的函数。</param> /// <param name="expiresAt">过期时间,默认永久有效</param> /// <returns>键的值。 如果 Memcached 中已存在该键,则为该键的现有值;如果 Memcached 中不存在该键,则为新值。</returns> public static T GetOrAdd <T>(string key, Func <string, T> valueFactory, DateTime expiresAt = default(DateTime)) { if (key == null) { throw new ArgumentNullException(nameof(key)); } if (valueFactory == null) { throw new ArgumentNullException(nameof(valueFactory)); } T local = default(T); IGetOperationResult <T> result = client.ExecuteGet <T>(key); if (result.Success && result.HasValue) { local = result.Value; } else { local = valueFactory(key); if (expiresAt == default(DateTime)) { Set(key, local); } else { Set(key, local, expiresAt); } } return(local); }
protected void ShouldFail <T>(IGetOperationResult <T> result) { ShouldFail((IOperationResult)result); Assert.False(result.HasValue); Assert.Equal(default(T), result.Value); }
protected void ShouldPass <T>(IGetOperationResult <T> result, T expectedValue) { ShouldPass(result); Assert.True(result.HasValue); Assert.Equal(expectedValue, result.Value); }
protected void GetAssertFail(IGetOperationResult <object> result) { Assert.False(result.Success, "Success was true"); Assert.Equal((ulong)0, result.Cas); Assert.True(result.StatusCode > 0, "StatusCode not greater than 0"); Assert.False(result.HasValue, "HasValue was true"); Assert.Null(result.Value); }
protected void GetAssertFail(IGetOperationResult result) { Assert.That(result.Success, Is.False, "Success was true"); Assert.That(result.Cas, Is.EqualTo(0), "Cas value was not 0"); Assert.That(result.StatusCode, Is.Null.Or.GreaterThan(0), "StatusCode not greater than 0"); Assert.That(result.HasValue, Is.False, "HasValue was true"); Assert.That(result.Value, Is.Null, "Value was not null"); }
public static void GetAssertFail(IGetOperationResult result) { Assert.That(result.Success, Is.False, "Success was true"); Assert.That(result.Cas, Is.EqualTo(0), "Cas value was not 0"); Assert.That(result.StatusCode, Is.Null.Or.GreaterThan(0), "StatusCode not greater than 0"); Assert.That(result.HasValue, Is.False, "HasValue was true"); Assert.That(result.Value, Is.Null, "Value was not null"); }
protected void AreEqual <T>(T expectedValue, IGetOperationResult <T> result, string operation = null) { ShouldPass(result, operation: operation); var prefix = CreatePrefix(operation); Assert.True(result.HasValue, prefix + "AreEqual - HasValue"); Assert.Equal(expectedValue, result.Value); }
public static TextContent ToContent(this IGetOperationResult row) { if (row == null) { return(null); } var dic = JsonConvert.DeserializeObject <Dictionary <string, object> >(row.Value.ToString()); return(new TextContent(dic)); }
public override bool Execute() { IGetOperationResult <string> gres = client.ExecuteGet <string>(Key); if (!gres.Success) { FailCommand(gres); return(false); } Console.Error.WriteLine("Command OK"); Console.Error.WriteLine("Value is " + gres.Value); Console.Error.WriteLine("Cas is " + gres.Cas.ToString()); return(true); }
protected void ShouldFail <T>(IGetOperationResult <T> result, T shouldNotBe) { ShouldFail((IOperationResult)result); Assert.NotEqual(shouldNotBe, result.Value); }
protected void ShouldPass(IGetOperationResult <object> result, object expectedValue) { ShouldPass <object>(result, expectedValue); }