Skip to content

Commit e6487fc

Browse files
authored
Merge pull request #146 from cnblogs/fix/string-deserialize-null
fix: fix string.Empty consistency issue
2 parents 2b7d597 + 5b941ef commit e6487fc

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

Enyim.Caching.Tests/MemcachedClientGetTests.cs

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,16 @@ public void When_Getting_SByte_Result_Is_Successful()
111111
GetAssertPass(getResult, expectedValue);
112112
}
113113

114+
[Fact]
115+
public async Task When_Getting_Empty_String_Async_Result_Is_Successful()
116+
{
117+
var key = GetUniqueKey("Get");
118+
var empty = string.Empty;
119+
Store(key: key, value: empty);
120+
var getResult = await _client.GetValueAsync<string>(key);
121+
Assert.Equal(getResult, empty);
122+
}
123+
114124
[Fact]
115125
public async Task GetValueOrCreateAsyncTest()
116126
{
@@ -132,7 +142,7 @@ private Task<IEnumerable<BlogPost>> GenerateValue()
132142
var posts = new List<BlogPost>()
133143
{
134144
new BlogPost{ Title = "test title 1", Body = "test body 1" },
135-
new BlogPost{ Title = "test title 2", Body = "test body 2" }
145+
new BlogPost{ Title = "test title 2", Body = "test body 2" },
136146
};
137147

138148
return Task.FromResult(posts.AsEnumerable());

Enyim.Caching/Memcached/Transcoders/DefaultTranscoder.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,6 @@ object ITranscoder.Deserialize(CacheItem item)
3030

3131
public virtual T Deserialize<T>(CacheItem item)
3232
{
33-
if (item.Data == null || item.Data.Count == 0) return default(T);
34-
3533
if (typeof(T).GetTypeCode() != TypeCode.Object || typeof(T) == typeof(Byte[]))
3634
{
3735
var value = Deserialize(item);

0 commit comments

Comments
 (0)