// Path: src/main/java/redis/clients/collections/Ranking.java
// public interface Ranking<T extends Number> {
// 
// 	T getPoints();
// 	
// 	String getName();
// }
// 
// Path: src/main/java/redis/clients/collections/RankingStructure.java
// public interface RankingStructure<T extends Number> extends Expirable {
// 
// 	ScoresPoint<T> create(String key);
// 
// 	void delete(String key);
// }
// 
// Path: src/main/java/redis/clients/collections/ScoresPoint.java
// public interface ScoresPoint<T extends Number> {
// 
// 	void initialPoint(String name, T value);
// 	
// 	T increment(String field, T value);
// 	
// 	T decrement(String field, T value);
// 	
// 	void remove(String field);
// 
// 	int size();
// 	
// 	List<Ranking<T>> range(long initial, long end);
// 	
// 	List<Ranking<T>> top(int top);
// 	
// 	List<Ranking<T>> last(int top);
// 	
// 	List<Ranking<T>> getRanking();
// }
// 
// Path: src/main/java/redis/clients/collections/builder/RedisStrutureBuilder.java
// public class RedisStrutureBuilder {
// 
// 	public static <T> KeyValueBuilder<T> ofKeyValue(Jedis jedis,Class<T> clazz) {
// 		Objects.requireNonNull(jedis);
// 		Objects.requireNonNull(clazz, "The class must be specificed to do the RedisStruturebuilder");
// 		return new KeyValueBuilder<>(jedis, clazz);
// 	}
// 
// 	public static CountStructureBuilder ofCount(Jedis jedis) {
// 		Objects.requireNonNull(jedis);
// 		return new CountStructureBuilder(jedis);
// 	}
// 
// 	public static <T> ListStructureBuilder<T> ofList(Jedis jedis, Class<T> clazz) {
// 		Objects.requireNonNull(jedis);
// 		Objects.requireNonNull(clazz, "The class must be specificed to do the ListStruturebuilder");
// 		return new ListStructureBuilder<>(jedis, clazz);
// 	}
// 
// 	public static <T> SetStructureBuilder<T> ofSet(Jedis jedis, Class<T> clazz) {
// 		Objects.requireNonNull(jedis);
// 		Objects.requireNonNull(clazz, "The class must be specificed to do the SetStruturebuilder");
// 		return new SetStructureBuilder<>(jedis, clazz);
// 	}
// 	
// 	public static <T> MapStructureBuilder<T> ofMap(Jedis jedis, Class<T> clazz) {
// 		Objects.requireNonNull(jedis);
// 		Objects.requireNonNull(clazz, "The class must be specificed to do the MapStruturebuilder");
// 		return new MapStructureBuilder<>(jedis, clazz);
// 		
// 	}
// 
// 	public static <T> QueueStructureBuilder<T> ofQueue(Jedis jedis, Class<T> clazz) {
// 		Objects.requireNonNull(jedis);
// 		Objects.requireNonNull(clazz);
// 		return new QueueStructureBuilder<>(jedis, clazz);
// 	}
// 
// 	public static RankingStructureBuilder ofRanking(Jedis jedis) {
// 		Objects.requireNonNull(jedis);
// 		return new RankingStructureBuilder(jedis);
// 	}
// 
// }
// 
// Path: src/test/java/redis/clients/collections/util/RedisConnection.java
// public class RedisConnection {
// 
// 	public static final Jedis JEDIS;
// 	
// 	static{
// 	 JEDIS = new Jedis("localhost");
// 	}
// }


import java.util.List;
import junit.framework.Assert;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import redis.clients.collections.Ranking;
import redis.clients.collections.RankingStructure;
import redis.clients.collections.ScoresPoint;
import redis.clients.collections.builder.RedisStrutureBuilder;
import redis.clients.collections.util.RedisConnection;
package redis.clients.collections;





public class RankingStructureDoubleTest {

	private RankingStructure<Double> laughThings;
	
	
	@Before
	public void init() {
		laughThings = RedisStrutureBuilder.ofRanking(RedisConnection.JEDIS).withNameSpace("laughThings").buildDouble();
	}
	
	@Test
	public void shouldAddAndRemoveValue() {
		ScoresPoint<Double> sneeze = laughThings.create("sneeze");
		
		sneeze.increment("Newton", 24.2424242424);
		sneeze.increment("Erish", 25.9);
		sneeze.increment("David", 924.786);
		
// Path: src/main/java/redis/clients/collections/Ranking.java
// public interface Ranking<T extends Number> {
// 
// 	T getPoints();
// 	
// 	String getName();
// }
// 
// Path: src/main/java/redis/clients/collections/RankingStructure.java
// public interface RankingStructure<T extends Number> extends Expirable {
// 
// 	ScoresPoint<T> create(String key);
// 
// 	void delete(String key);
// }
// 
// Path: src/main/java/redis/clients/collections/ScoresPoint.java
// public interface ScoresPoint<T extends Number> {
// 
// 	void initialPoint(String name, T value);
// 	
// 	T increment(String field, T value);
// 	
// 	T decrement(String field, T value);
// 	
// 	void remove(String field);
// 
// 	int size();
// 	
// 	List<Ranking<T>> range(long initial, long end);
// 	
// 	List<Ranking<T>> top(int top);
// 	
// 	List<Ranking<T>> last(int top);
// 	
// 	List<Ranking<T>> getRanking();
// }
// 
// Path: src/main/java/redis/clients/collections/builder/RedisStrutureBuilder.java
// public class RedisStrutureBuilder {
// 
// 	public static <T> KeyValueBuilder<T> ofKeyValue(Jedis jedis,Class<T> clazz) {
// 		Objects.requireNonNull(jedis);
// 		Objects.requireNonNull(clazz, "The class must be specificed to do the RedisStruturebuilder");
// 		return new KeyValueBuilder<>(jedis, clazz);
// 	}
// 
// 	public static CountStructureBuilder ofCount(Jedis jedis) {
// 		Objects.requireNonNull(jedis);
// 		return new CountStructureBuilder(jedis);
// 	}
// 
// 	public static <T> ListStructureBuilder<T> ofList(Jedis jedis, Class<T> clazz) {
// 		Objects.requireNonNull(jedis);
// 		Objects.requireNonNull(clazz, "The class must be specificed to do the ListStruturebuilder");
// 		return new ListStructureBuilder<>(jedis, clazz);
// 	}
// 
// 	public static <T> SetStructureBuilder<T> ofSet(Jedis jedis, Class<T> clazz) {
// 		Objects.requireNonNull(jedis);
// 		Objects.requireNonNull(clazz, "The class must be specificed to do the SetStruturebuilder");
// 		return new SetStructureBuilder<>(jedis, clazz);
// 	}
// 	
// 	public static <T> MapStructureBuilder<T> ofMap(Jedis jedis, Class<T> clazz) {
// 		Objects.requireNonNull(jedis);
// 		Objects.requireNonNull(clazz, "The class must be specificed to do the MapStruturebuilder");
// 		return new MapStructureBuilder<>(jedis, clazz);
// 		
// 	}
// 
// 	public static <T> QueueStructureBuilder<T> ofQueue(Jedis jedis, Class<T> clazz) {
// 		Objects.requireNonNull(jedis);
// 		Objects.requireNonNull(clazz);
// 		return new QueueStructureBuilder<>(jedis, clazz);
// 	}
// 
// 	public static RankingStructureBuilder ofRanking(Jedis jedis) {
// 		Objects.requireNonNull(jedis);
// 		return new RankingStructureBuilder(jedis);
// 	}
// 
// }
// 
// Path: src/test/java/redis/clients/collections/util/RedisConnection.java
// public class RedisConnection {
// 
// 	public static final Jedis JEDIS;
// 	
// 	static{
// 	 JEDIS = new Jedis("localhost");
// 	}
// }


// Path: src/test/java/redis/clients/collections/RankingStructureDoubleTest.java
import java.util.List;
import junit.framework.Assert;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import redis.clients.collections.Ranking;
import redis.clients.collections.RankingStructure;
import redis.clients.collections.ScoresPoint;
import redis.clients.collections.builder.RedisStrutureBuilder;
import redis.clients.collections.util.RedisConnection;

package redis.clients.collections;





public class RankingStructureDoubleTest {

	private RankingStructure<Double> laughThings;
	
	
	@Before
	public void init() {
		laughThings = RedisStrutureBuilder.ofRanking(RedisConnection.JEDIS).withNameSpace("laughThings").buildDouble();
	}
	
	@Test
	public void shouldAddAndRemoveValue() {
		ScoresPoint<Double> sneeze = laughThings.create("sneeze");
		
		sneeze.increment("Newton", 24.2424242424);
		sneeze.increment("Erish", 25.9);
		sneeze.increment("David", 924.786);
		
		List<Ranking<Double>> ranking = sneeze.getRanking();