diff options
author | ryanlecompte <lecompte@gmail.com> | 2013-06-12 10:54:16 -0700 |
---|---|---|
committer | ryanlecompte <lecompte@gmail.com> | 2013-06-12 10:54:16 -0700 |
commit | db5bca08ff00565732946a9c0a0244a9f7021d82 (patch) | |
tree | 433919cea32f612c76025e079667dcd938e37110 /core/src/test/scala | |
parent | dc4073654b1707f115de30088938f6e53efda0ba (diff) | |
download | spark-db5bca08ff00565732946a9c0a0244a9f7021d82.tar.gz spark-db5bca08ff00565732946a9c0a0244a9f7021d82.tar.bz2 spark-db5bca08ff00565732946a9c0a0244a9f7021d82.zip |
add a new top K method to RDD using a bounded priority queue
Diffstat (limited to 'core/src/test/scala')
-rw-r--r-- | core/src/test/scala/spark/RDDSuite.scala | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/core/src/test/scala/spark/RDDSuite.scala b/core/src/test/scala/spark/RDDSuite.scala index 3f69e99780..67f3332d44 100644 --- a/core/src/test/scala/spark/RDDSuite.scala +++ b/core/src/test/scala/spark/RDDSuite.scala @@ -317,4 +317,23 @@ class RDDSuite extends FunSuite with LocalSparkContext { assert(sample.size === checkSample.size) for (i <- 0 until sample.size) assert(sample(i) === checkSample(i)) } + + test("top with predefined ordering") { + sc = new SparkContext("local", "test") + val nums = Array.range(1, 100000) + val ints = sc.makeRDD(scala.util.Random.shuffle(nums), 2) + val topK = ints.top(5) + assert(topK.size === 5) + assert(topK.sorted === nums.sorted.takeRight(5)) + } + + test("top with custom ordering") { + sc = new SparkContext("local", "test") + val words = Vector("a", "b", "c", "d") + implicit val ord = implicitly[Ordering[String]].reverse + val rdd = sc.makeRDD(words, 2) + val topK = rdd.top(2) + assert(topK.size === 2) + assert(topK.sorted === Array("b", "a")) + } } |