aboutsummaryrefslogtreecommitdiff
path: root/core/src/test/scala
diff options
context:
space:
mode:
authorMatei Zaharia <matei@eecs.berkeley.edu>2013-06-15 00:53:41 -0700
committerMatei Zaharia <matei@eecs.berkeley.edu>2013-06-15 00:53:41 -0700
commitf961aac8b28dd537efe7a2b245794a6bd310e497 (patch)
tree60e414137fdcccab26e061d90649385e817b87da /core/src/test/scala
parent6602d9497332457633905677b08093e98983c3e4 (diff)
parente8801d44900153eae6412963d2f3e2f19bfdc4e9 (diff)
downloadspark-f961aac8b28dd537efe7a2b245794a6bd310e497.tar.gz
spark-f961aac8b28dd537efe7a2b245794a6bd310e497.tar.bz2
spark-f961aac8b28dd537efe7a2b245794a6bd310e497.zip
Merge pull request #649 from ryanlecompte/master
Add 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.scala19
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"))
+ }
}