master
ruyu 7 years ago
parent e437d75902
commit 22377b67b0

@ -576,8 +576,170 @@ namespace RedisStudyTest
[Fact]
public void SortedSetRangeByScore_NotKey_Test()
{
redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey);
var members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey);
Assert.Empty(members);
}
/// <summary>
/// 排它性参数Exclude设置 测试
/// </summary>
[Fact]
public void SortedSetRangeByScore_Exclude_Test()
{
SortedSetEntry[] sortedSetEntries = new SortedSetEntry[]
{
new SortedSetEntry("first",1),
new SortedSetEntry("second",2),
new SortedSetEntry("third",3),
new SortedSetEntry("four",4),
new SortedSetEntry("five",5),
};
redisSortedSetStudy.SortedSetAdd(defaultRedisKey, sortedSetEntries);
//默认Exclude.None [Start,Stop]
var members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, 2, 4, Exclude.None);
Assert.Equal(3, members.Length);
Assert.Contains("second", members);
Assert.Contains("third", members);
Assert.Contains("four", members);
//Exclude.Start (Start,Stop]
members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, 2, 4, Exclude.Start);
Assert.Equal(2, members.Length);
Assert.Contains("third", members);
Assert.Contains("four", members);
//Exclude.Stop [Start,Stop)
members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, 2, 4, Exclude.Stop);
Assert.Equal(2, members.Length);
Assert.Contains("second", members);
Assert.Contains("third", members);
//Exclude.Both (Start,Stop)
members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, 2, 4, Exclude.Both);
Assert.Single(members);
Assert.Contains("third", members);
}
/// <summary>
/// 排序参数测试
/// </summary>
[Fact]
public void SortedSetRangeByScore_Sort_Test()
{
SortedSetEntry[] sortedSetEntries = new SortedSetEntry[]
{
new SortedSetEntry("first",1),
new SortedSetEntry("second",2),
new SortedSetEntry("third",3),
new SortedSetEntry("four",4),
new SortedSetEntry("five",5),
};
redisSortedSetStudy.SortedSetAdd(defaultRedisKey, sortedSetEntries);
//默认:升序
var members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, 2, 4, Exclude.None, Order.Ascending);
Assert.Equal(3, members.Length);
Assert.Equal("second", members[0]);
Assert.Equal("third", members[1]);
Assert.Equal("four", members[2]);
//降序
members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, 2, 4, Exclude.None, Order.Descending);
Assert.Equal(3, members.Length);
Assert.Equal("four", members[0]);
Assert.Equal("third", members[1]);
Assert.Equal("second", members[2]);
}
/// <summary>
/// 分页测试
/// </summary>
[Fact]
public void SortedSetRangeByScore_Page_Test()
{
SortedSetEntry[] sortedSetEntries = new SortedSetEntry[]
{
new SortedSetEntry("Andy",1),
new SortedSetEntry("and",2),
new SortedSetEntry("And",3),
new SortedSetEntry("Banana",4),
new SortedSetEntry("color",5),
new SortedSetEntry("query",6),
new SortedSetEntry("remove",7),
new SortedSetEntry("101",8),
new SortedSetEntry("304",9),
new SortedSetEntry("404",10),
new SortedSetEntry("王高峰",11),
new SortedSetEntry("刘山东",12),
};
redisSortedSetStudy.SortedSetAdd(defaultRedisKey, sortedSetEntries);
//第一页
var members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, double.MinValue, double.MaxValue, Exclude.None, Order.Ascending, 0, 4, CommandFlags.None);
Assert.Equal(4, members.Length);
Assert.Contains("Andy", members);
Assert.Contains("and", members);
Assert.Contains("And", members);
Assert.Contains("Banana", members);
//第2页
members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, double.NegativeInfinity, double.PositiveInfinity, Exclude.None, Order.Ascending, 4, 4, CommandFlags.None);
Assert.Equal(4, members.Length);
Assert.Contains("color", members);
Assert.Contains("query", members);
Assert.Contains("remove", members);
Assert.Contains("101", members);
//第3页
members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, double.NegativeInfinity, double.PositiveInfinity, Exclude.None, Order.Ascending, 8, 4, CommandFlags.None);
Assert.Equal(4, members.Length);
Assert.Contains("304", members);
Assert.Contains("404", members);
Assert.Contains("王高峰", members);
Assert.Contains("刘山东", members);
}
[Fact]
public void SortedSetRangeByScoreTest()
{
SortedSetEntry[] sortedSetEntries = new SortedSetEntry[]
{
new SortedSetEntry("Andy",1),
new SortedSetEntry("and",2),
new SortedSetEntry("And",3),
new SortedSetEntry("Banana",4),
new SortedSetEntry("color",5),
new SortedSetEntry("query",6),
new SortedSetEntry("remove",7),
new SortedSetEntry("101",8),
new SortedSetEntry("304",9),
new SortedSetEntry("404",10),
new SortedSetEntry("王高峰",11),
new SortedSetEntry("刘山东",12),
};
redisSortedSetStudy.SortedSetAdd(defaultRedisKey, sortedSetEntries);
var members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, 1, 5);
Assert.Equal(5, members.Length);
Assert.Equal("Andy", members[0]);
Assert.Equal("and", members[1]);
Assert.Equal("And", members[2]);
Assert.Equal("Banana", members[3]);
Assert.Equal("color", members[4]);
members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, 5, 7, Exclude.None, Order.Descending);
Assert.Equal(3, members.Length);
Assert.Equal("remove", members[0]);
Assert.Equal("query", members[1]);
Assert.Equal("color", members[2]);
members = redisSortedSetStudy.SortedSetRangeByScore(defaultRedisKey, double.NegativeInfinity, double.PositiveInfinity);
Assert.Equal(12, members.Length);
Assert.Equal("Andy", members[0]);
Assert.Equal("刘山东", members[11]);
}
#endregion
#region 清理

Loading…
Cancel
Save