Advertisement
Guest User

Untitled

a guest
Nov 29th, 2014
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 1.58 KB | None | 0 0
  1.     // CREATE / INSERT
  2.     val srs1 = (1 to 10) map { i => SimpleRoot(i = i) }
  3.     val uris = await(repository.insert(srs1))
  4.  
  5.     locally {
  6.       val h1s = getHistories(srs1)
  7.       h1s.size mustBe srs1.size
  8.       for ((h1, sr1) <- h1s zip srs1) {
  9.         h1.snapshots.size mustBe 1
  10.         h1.snapshots(0).action mustBe "INSERT"
  11.         h1.snapshots(0).value.i mustBe sr1.i
  12.       }
  13.     }
  14.  
  15.     // READ / FIND
  16.     val srs2 = await(repository.find(uris))
  17.  
  18.     // UPDATE
  19.     srs2 foreach { _.i *= 10 }
  20.     await(repository.update(srs2))
  21.  
  22.     locally {
  23.       val h2s = getHistories(srs2)
  24.       h2s.size mustBe srs2.size
  25.       for (((h2, sr1), sr2) <- h2s zip srs1 zip srs2) {
  26.         println(h2.snapshots.size, 2, h2.snapshots.size == 2, h2.snapshots.size mustBe 2)
  27.  
  28.         h2.snapshots.size mustBe 2
  29.         h2.snapshots(0).action mustBe "INSERT"
  30.         h2.snapshots(0).value.i mustBe sr1.i
  31.         h2.snapshots(1).action mustBe "UPDATE"
  32.         h2.snapshots(1).value.i mustBe sr2.i
  33.       }
  34.     }
  35.  
  36.     // DELETE
  37.     val srs3 = await(repository.find(uris))
  38.     await(repository.delete(srs3))
  39.  
  40.     locally {
  41.       val h2s = getHistories(srs3)
  42.       h2s.size mustBe srs3.size
  43.       for ((((h3, sr1), sr2), sr3) <- h2s zip srs1 zip srs2 zip srs3) {
  44.         h3.snapshots.size mustBe 3
  45.         h3.snapshots(0).action mustBe "INSERT"
  46.         h3.snapshots(0).value.i mustBe sr1.i
  47.         h3.snapshots(1).action mustBe "UPDATE"
  48.         h3.snapshots(1).value.i mustBe sr2.i
  49.         h3.snapshots(2).action mustBe "DELETE"
  50.         h3.snapshots(2).value.i mustBe sr3.i
  51.       }
  52.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement