aboutsummaryrefslogtreecommitdiff
path: root/core/src/test/scala/spark/UtilsSuite.scala
blob: ed4701574fd4d9e6aa02959e428a87bbddc5c997 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package spark

import org.scalatest.FunSuite
import java.io.{ByteArrayOutputStream, ByteArrayInputStream}
import scala.util.Random

class UtilsSuite extends FunSuite {

  test("memoryBytesToString") {
    assert(Utils.memoryBytesToString(10) === "10.0 B")
    assert(Utils.memoryBytesToString(1500) === "1500.0 B")
    assert(Utils.memoryBytesToString(2000000) === "1953.1 KB")
    assert(Utils.memoryBytesToString(2097152) === "2.0 MB")
    assert(Utils.memoryBytesToString(2306867) === "2.2 MB")
    assert(Utils.memoryBytesToString(5368709120L) === "5.0 GB")
    assert(Utils.memoryBytesToString(5L * 1024L * 1024L * 1024L * 1024L) === "5.0 TB")
  }

  test("copyStream") {
    //input array initialization
    val bytes = Array.ofDim[Byte](9000)
    Random.nextBytes(bytes)

    val os = new ByteArrayOutputStream()
    Utils.copyStream(new ByteArrayInputStream(bytes), os)

    assert(os.toByteArray.toList.equals(bytes.toList))
  }

  test("memoryStringToMb"){
    assert(Utils.memoryStringToMb("1") == 0)
    assert(Utils.memoryStringToMb("1048575") == 0)
    assert(Utils.memoryStringToMb("3145728") == 3)

    assert(Utils.memoryStringToMb("1024k") == 1)
    assert(Utils.memoryStringToMb("5000k") == 4)
    assert(Utils.memoryStringToMb("4024k") == Utils.memoryStringToMb("4024K"))

    assert(Utils.memoryStringToMb("1024m") == 1024)
    assert(Utils.memoryStringToMb("5000m") == 5000)
    assert(Utils.memoryStringToMb("4024m") == Utils.memoryStringToMb("4024M"))

    assert(Utils.memoryStringToMb("2g") == 2048)
    assert(Utils.memoryStringToMb("3g") == Utils.memoryStringToMb("3G"))

    assert(Utils.memoryStringToMb("2t") == 2097152)
    assert(Utils.memoryStringToMb("3t") == Utils.memoryStringToMb("3T"))
  }
}