aboutsummaryrefslogtreecommitdiff
path: root/src/test/scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/scala')
-rw-r--r--src/test/scala/com/drivergrp/core/AuthTest.scala77
-rw-r--r--src/test/scala/xyz/driver/core/AuthTest.scala79
-rw-r--r--src/test/scala/xyz/driver/core/CoreTest.scala (renamed from src/test/scala/com/drivergrp/core/CoreTest.scala)16
-rw-r--r--src/test/scala/xyz/driver/core/FileTest.scala (renamed from src/test/scala/com/drivergrp/core/FileTest.scala)16
-rw-r--r--src/test/scala/xyz/driver/core/GeneratorsTest.scala (renamed from src/test/scala/com/drivergrp/core/GeneratorsTest.scala)38
-rw-r--r--src/test/scala/xyz/driver/core/JsonTest.scala (renamed from src/test/scala/com/drivergrp/core/JsonTest.scala)64
-rw-r--r--src/test/scala/xyz/driver/core/MessagesTest.scala (renamed from src/test/scala/com/drivergrp/core/MessagesTest.scala)20
-rw-r--r--src/test/scala/xyz/driver/core/StatsTest.scala (renamed from src/test/scala/com/drivergrp/core/StatsTest.scala)10
-rw-r--r--src/test/scala/xyz/driver/core/TestTypes.scala14
-rw-r--r--src/test/scala/xyz/driver/core/TimeTest.scala (renamed from src/test/scala/com/drivergrp/core/TimeTest.scala)12
10 files changed, 199 insertions, 147 deletions
diff --git a/src/test/scala/com/drivergrp/core/AuthTest.scala b/src/test/scala/com/drivergrp/core/AuthTest.scala
deleted file mode 100644
index 42f9155..0000000
--- a/src/test/scala/com/drivergrp/core/AuthTest.scala
+++ /dev/null
@@ -1,77 +0,0 @@
-package com.drivergrp.core
-
-import com.drivergrp.core.auth._
-import akka.http.scaladsl.testkit.ScalatestRouteTest
-import akka.http.scaladsl.server._
-import Directives._
-import akka.http.scaladsl.model.headers.{HttpChallenges, RawHeader}
-import akka.http.scaladsl.server.AuthenticationFailedRejection.CredentialsRejected
-import org.scalatest.mock.MockitoSugar
-import org.scalatest.{FlatSpec, Matchers}
-
-import scala.concurrent.Future
-import scalaz.OptionT
-
-class AuthTest extends FlatSpec with Matchers with MockitoSugar with ScalatestRouteTest {
-
- val authStatusService: AuthService[User] = new AuthService[User] {
- override def authStatus(authToken: AuthToken): OptionT[Future, User] = OptionT.optionT[Future] {
- Future.successful(Some(new User() {
- override def id: Id[User] = Id[User](1L)
- override def roles: Set[Role] = Set(PathologistRole)
- }))
- }
- }
-
- import authStatusService._
-
- "'authorize' directive" should "throw error is auth token is not in the request" in {
-
- Get("/naive/attempt") ~>
- authorize(CanSignOutReport) {
- case (authToken, user) =>
- complete("Never going to be here")
- } ~>
- check {
- handled shouldBe false
- rejections should contain(MissingHeaderRejection("WWW-Authenticate"))
- }
- }
-
- it should "throw error is authorized user is not having the requested permission" in {
-
- val referenceAuthToken = AuthToken(Base64("I am a pathologist's token"))
-
- Post("/administration/attempt").addHeader(
- RawHeader(AuthService.AuthenticationTokenHeader, referenceAuthToken.value.value)
- ) ~>
- authorize(CanAssignRoles) {
- case (authToken, user) =>
- complete("Never going to get here")
- } ~>
- check {
- handled shouldBe false
- rejections should contain(
- AuthenticationFailedRejection(
- CredentialsRejected,
- HttpChallenges.basic("User does not have the required permission CanAssignRoles")))
- }
- }
-
- it should "pass and retrieve the token to client code, if token is in request and user has permission" in {
-
- val referenceAuthToken = AuthToken(Base64("I am token"))
-
- Get("/valid/attempt/?a=2&b=5").addHeader(
- RawHeader(AuthService.AuthenticationTokenHeader, referenceAuthToken.value.value)
- ) ~>
- authorize(CanSignOutReport) {
- case (authToken, user) =>
- complete("Alright, \"" + authToken.value.value + "\" is handled")
- } ~>
- check {
- handled shouldBe true
- responseAs[String] shouldBe "Alright, \"I am token\" is handled"
- }
- }
-}
diff --git a/src/test/scala/xyz/driver/core/AuthTest.scala b/src/test/scala/xyz/driver/core/AuthTest.scala
new file mode 100644
index 0000000..f4d4d2a
--- /dev/null
+++ b/src/test/scala/xyz/driver/core/AuthTest.scala
@@ -0,0 +1,79 @@
+package xyz.driver.core
+
+import akka.http.scaladsl.testkit.ScalatestRouteTest
+import akka.http.scaladsl.server._
+import Directives._
+import akka.http.scaladsl.model.headers.{HttpChallenges, RawHeader}
+import akka.http.scaladsl.server.AuthenticationFailedRejection.CredentialsRejected
+import org.scalatest.mock.MockitoSugar
+import org.scalatest.{FlatSpec, Matchers}
+import xyz.driver.core.auth._
+import xyz.driver.core.rest.ServiceRequestContext
+
+import scala.concurrent.Future
+import scalaz.OptionT
+
+class AuthTest extends FlatSpec with Matchers with MockitoSugar with ScalatestRouteTest {
+
+ val authStatusService: AuthService[User] = new AuthService[User] {
+ override def authStatus(context: ServiceRequestContext): OptionT[Future, User] = OptionT.optionT[Future] {
+ if (context.contextHeaders.keySet.contains(AuthService.AuthenticationTokenHeader)) {
+ Future.successful(Some(new User {
+ override def id: Id[User] = Id[User]("1")
+ override def roles: Set[Role] = Set(PathologistRole)
+ }: User))
+ } else {
+ Future.successful(Option.empty[User])
+ }
+ }
+ }
+
+ import authStatusService._
+
+ "'authorize' directive" should "throw error is auth token is not in the request" in {
+
+ Get("/naive/attempt") ~>
+ authorize(CanSignOutReport) { user =>
+ complete("Never going to be here")
+ } ~>
+ check {
+ // handled shouldBe false
+ rejections should contain(ValidationRejection("Wasn't able to find authenticated user for the token provided"))
+ }
+ }
+
+ it should "throw error is authorized user is not having the requested permission" in {
+
+ val referenceAuthToken = AuthToken("I am a pathologist's token")
+
+ Post("/administration/attempt").addHeader(
+ RawHeader(AuthService.AuthenticationTokenHeader, referenceAuthToken.value)
+ ) ~>
+ authorize(CanAssignRoles) { user =>
+ complete("Never going to get here")
+ } ~>
+ check {
+ handled shouldBe false
+ rejections should contain(
+ AuthenticationFailedRejection(
+ CredentialsRejected,
+ HttpChallenges.basic("User does not have the required permissions: CanAssignRoles")))
+ }
+ }
+
+ it should "pass and retrieve the token to client code, if token is in request and user has permission" in {
+
+ val referenceAuthToken = AuthToken("I am token")
+
+ Get("/valid/attempt/?a=2&b=5").addHeader(
+ RawHeader(AuthService.AuthenticationTokenHeader, referenceAuthToken.value)
+ ) ~>
+ authorize(CanSignOutReport) { user =>
+ complete("Alright, user \"" + user.id + "\" is authorized")
+ } ~>
+ check {
+ handled shouldBe true
+ responseAs[String] shouldBe "Alright, user \"1\" is authorized"
+ }
+ }
+}
diff --git a/src/test/scala/com/drivergrp/core/CoreTest.scala b/src/test/scala/xyz/driver/core/CoreTest.scala
index 19e685c..3eb9eaa 100644
--- a/src/test/scala/com/drivergrp/core/CoreTest.scala
+++ b/src/test/scala/xyz/driver/core/CoreTest.scala
@@ -1,11 +1,11 @@
-package com.drivergrp.core
+package xyz.driver.core
import java.io.ByteArrayOutputStream
-import com.drivergrp.core.revision.Revision
+import org.mockito.Mockito._
import org.scalatest.mock.MockitoSugar
import org.scalatest.{FlatSpec, Matchers}
-import org.mockito.Mockito._
+import xyz.driver.core.revision.Revision
class CoreTest extends FlatSpec with Matchers with MockitoSugar {
@@ -31,12 +31,12 @@ class CoreTest extends FlatSpec with Matchers with MockitoSugar {
"Id" should "have equality and ordering working correctly" in {
- (Id[String](1234213L) === Id[String](1234213L)) should be(true)
- (Id[String](1234213L) === Id[String](213414L)) should be(false)
- (Id[String](213414L) === Id[String](1234213L)) should be(false)
+ (Id[String]("1234213") === Id[String]("1234213")) should be(true)
+ (Id[String]("1234213") === Id[String]("213414")) should be(false)
+ (Id[String]("213414") === Id[String]("1234213")) should be(false)
- Seq(Id[String](4L), Id[String](3L), Id[String](2L), Id[String](1L)).sorted should contain
- theSameElementsInOrderAs(Seq(Id[String](1L), Id[String](2L), Id[String](3L), Id[String](4L)))
+ Seq(Id[String]("4"), Id[String]("3"), Id[String]("2"), Id[String]("1")).sorted should contain
+ theSameElementsInOrderAs(Seq(Id[String]("1"), Id[String]("2"), Id[String]("3"), Id[String]("4")))
}
"Name" should "have equality and ordering working correctly" in {
diff --git a/src/test/scala/com/drivergrp/core/FileTest.scala b/src/test/scala/xyz/driver/core/FileTest.scala
index 2c9c2c9..57af1c2 100644
--- a/src/test/scala/com/drivergrp/core/FileTest.scala
+++ b/src/test/scala/xyz/driver/core/FileTest.scala
@@ -1,15 +1,15 @@
-package com.drivergrp.core
+package xyz.driver.core
import java.io.File
import java.nio.file.Paths
import com.amazonaws.services.s3.AmazonS3
import com.amazonaws.services.s3.model._
-import com.drivergrp.core.file.{FileSystemStorage, S3Storage}
+import org.mockito.Matchers._
+import org.mockito.Mockito._
import org.scalatest.mock.MockitoSugar
import org.scalatest.{FlatSpec, Matchers}
-import org.mockito.Mockito._
-import org.mockito.Matchers._
+import xyz.driver.core.file.{FileSystemStorage, S3Storage}
import scala.concurrent.Await
import scala.concurrent.duration._
@@ -44,14 +44,14 @@ class FileTest extends FlatSpec with Matchers with MockitoSugar {
false, // after file is uploaded it contains this one file (one page)
false) // after file is deleted it is empty (zero pages) again
when(s3ResultsMock.getObjectSummaries).thenReturn(
- // before file created it is empty, `getObjectSummaries` is never called
- List[S3ObjectSummary](s3ObjectSummaryMock).asJava, // after file is uploaded it contains this one file
- List.empty[S3ObjectSummary].asJava) // after file is deleted it is empty again
+ // before file created it is empty, `getObjectSummaries` is never called
+ List[S3ObjectSummary](s3ObjectSummaryMock).asJava, // after file is uploaded it contains this one file
+ List.empty[S3ObjectSummary].asJava) // after file is deleted it is empty again
val s3ObjectMetadataMock = mock[ObjectMetadata]
val amazonS3Mock = mock[AmazonS3]
when(amazonS3Mock.listObjectsV2(any[ListObjectsV2Request]())).thenReturn(s3ResultsMock)
- when(amazonS3Mock.putObject(testBucket, testFilePath.toString, sourceTestFile)).thenReturn(s3PutMock)
+ when(amazonS3Mock.putObject(testBucket.value, testFilePath.toString, sourceTestFile)).thenReturn(s3PutMock)
when(amazonS3Mock.getObject(any[GetObjectRequest](), any[File]())).thenReturn(s3ObjectMetadataMock)
val s3Storage = new S3Storage(amazonS3Mock, testBucket, scala.concurrent.ExecutionContext.global)
diff --git a/src/test/scala/com/drivergrp/core/GeneratorsTest.scala b/src/test/scala/xyz/driver/core/GeneratorsTest.scala
index 631149e..4ec73ec 100644
--- a/src/test/scala/com/drivergrp/core/GeneratorsTest.scala
+++ b/src/test/scala/xyz/driver/core/GeneratorsTest.scala
@@ -1,4 +1,4 @@
-package com.drivergrp.core
+package xyz.driver.core
import org.scalatest.{Assertions, FlatSpec, Matchers}
@@ -11,25 +11,25 @@ class GeneratorsTest extends FlatSpec with Matchers with Assertions {
val generatedId2 = nextId[String]()
val generatedId3 = nextId[Long]()
- generatedId1 should be >= 0L
- generatedId2 should be >= 0L
- generatedId3 should be >= 0L
+ generatedId1.length should be >= 0
+ generatedId2.length should be >= 0
+ generatedId3.length should be >= 0
generatedId1 should not be generatedId2
generatedId2 should !==(generatedId3)
}
it should "be able to generate com.drivergrp.core.Id identifiers with max value" in {
- val generatedLimitedId1 = nextId[String](10000)
- val generatedLimitedId2 = nextId[String](1000)
- val generatedLimitedId3 = nextId[Long](2000)
+ val generatedLimitedId1 = nextId[String](5)
+ val generatedLimitedId2 = nextId[String](4)
+ val generatedLimitedId3 = nextId[Long](3)
- generatedLimitedId1 should be >= 0L
- generatedLimitedId1 should be < 10000L
- generatedLimitedId2 should be >= 0L
- generatedLimitedId2 should be < 1000L
- generatedLimitedId3 should be >= 0L
- generatedLimitedId3 should be < 2000L
+ generatedLimitedId1.length should be >= 0
+ generatedLimitedId1.length should be < 6
+ generatedLimitedId2.length should be >= 0
+ generatedLimitedId2.length should be < 5
+ generatedLimitedId3.length should be >= 0
+ generatedLimitedId3.length should be < 4
generatedLimitedId1 should not be generatedLimitedId2
generatedLimitedId2 should !==(generatedLimitedId3)
}
@@ -37,11 +37,11 @@ class GeneratorsTest extends FlatSpec with Matchers with Assertions {
it should "be able to generate com.drivergrp.core.Name names" in {
nextName[String]() should not be nextName[String]()
- nextName[String]().length should be >= 0
+ nextName[String]().value.length should be >= 0
val fixedLengthName = nextName[String](10)
fixedLengthName.length should be <= 10
- assert(!fixedLengthName.exists(_.isControl))
+ assert(!fixedLengthName.value.exists(_.isControl))
}
it should "be able to generate proper UUIDs" in {
@@ -82,11 +82,11 @@ class GeneratorsTest extends FlatSpec with Matchers with Assertions {
val generatedPair = nextPair(nextId[Int](), nextName[Int]())
- generatedPair._1 should be > 0L
+ generatedPair._1.length should be > 0
generatedPair._2.length should be > 0
nextPair(nextId[Int](), nextName[Int]()) should not be
- nextPair(nextId[Int](), nextName[Int]())
+ nextPair(nextId[Int](), nextName[Int]())
}
it should "be able to generate a triad of two generated values" in {
@@ -98,12 +98,12 @@ class GeneratorsTest extends FlatSpec with Matchers with Assertions {
val generatedTriad = nextTriad(nextId[Int](), nextName[Int](), nextBigDecimal())
- generatedTriad._1 should be > 0L
+ generatedTriad._1.length should be > 0
generatedTriad._2.length should be > 0
generatedTriad._3 should be >= BigDecimal(0.00)
nextTriad(nextId[Int](), nextName[Int](), nextBigDecimal()) should not be
- nextTriad(nextId[Int](), nextName[Int](), nextBigDecimal())
+ nextTriad(nextId[Int](), nextName[Int](), nextBigDecimal())
}
it should "be able to generate a time value" in {
diff --git a/src/test/scala/com/drivergrp/core/JsonTest.scala b/src/test/scala/xyz/driver/core/JsonTest.scala
index 125e97c..eb8d5d8 100644
--- a/src/test/scala/com/drivergrp/core/JsonTest.scala
+++ b/src/test/scala/xyz/driver/core/JsonTest.scala
@@ -1,20 +1,22 @@
-package com.drivergrp.core
+package xyz.driver.core
-import com.drivergrp.core.json.{EnumJsonFormat, ValueClassFormat}
-import com.drivergrp.core.revision.Revision
-import com.drivergrp.core.time.provider.SystemTimeProvider
import org.scalatest.{FlatSpec, Matchers}
+import xyz.driver.core.json.{EnumJsonFormat, GadtJsonFormat, ValueClassFormat}
+import xyz.driver.core.revision.Revision
+import xyz.driver.core.time.provider.SystemTimeProvider
+import spray.json._
+import xyz.driver.core.TestTypes.CustomGADT
class JsonTest extends FlatSpec with Matchers {
"Json format for Id" should "read and write correct JSON" in {
- val referenceId = Id[String](1312L)
+ val referenceId = Id[String]("1312-34A")
- val writtenJson = com.drivergrp.core.json.idFormat.write(referenceId)
- writtenJson.prettyPrint should be("1312")
+ val writtenJson = json.idFormat.write(referenceId)
+ writtenJson.prettyPrint should be("\"1312-34A\"")
- val parsedId = com.drivergrp.core.json.idFormat.read(writtenJson)
+ val parsedId = json.idFormat.read(writtenJson)
parsedId should be(referenceId)
}
@@ -22,10 +24,10 @@ class JsonTest extends FlatSpec with Matchers {
val referenceName = Name[String]("Homer")
- val writtenJson = com.drivergrp.core.json.nameFormat.write(referenceName)
+ val writtenJson = json.nameFormat.write(referenceName)
writtenJson.prettyPrint should be("\"Homer\"")
- val parsedName = com.drivergrp.core.json.nameFormat.read(writtenJson)
+ val parsedName = json.nameFormat.read(writtenJson)
parsedName should be(referenceName)
}
@@ -33,10 +35,10 @@ class JsonTest extends FlatSpec with Matchers {
val referenceTime = new SystemTimeProvider().currentTime()
- val writtenJson = com.drivergrp.core.json.timeFormat.write(referenceTime)
+ val writtenJson = json.timeFormat.write(referenceTime)
writtenJson.prettyPrint should be("{\n \"timestamp\": " + referenceTime.millis + "\n}")
- val parsedTime = com.drivergrp.core.json.timeFormat.read(writtenJson)
+ val parsedTime = json.timeFormat.read(writtenJson)
parsedTime should be(referenceTime)
}
@@ -44,10 +46,10 @@ class JsonTest extends FlatSpec with Matchers {
val referenceRevision = Revision[String]("037e2ec0-8901-44ac-8e53-6d39f6479db4")
- val writtenJson = com.drivergrp.core.json.revisionFormat.write(referenceRevision)
+ val writtenJson = json.revisionFormat.write(referenceRevision)
writtenJson.prettyPrint should be("\"" + referenceRevision.id + "\"")
- val parsedRevision = com.drivergrp.core.json.revisionFormat.read(writtenJson)
+ val parsedRevision = json.revisionFormat.read(writtenJson)
parsedRevision should be(referenceRevision)
}
@@ -98,4 +100,38 @@ class JsonTest extends FlatSpec with Matchers {
parsedValue1 should be(referenceValue1)
parsedValue2 should be(referenceValue2)
}
+
+ "Json format for classes GADT" should "read and write correct JSON" in {
+
+ import CustomGADT._
+ import DefaultJsonProtocol._
+ implicit val case1Format = jsonFormat1(GadtCase1)
+ implicit val case2Format = jsonFormat1(GadtCase2)
+ implicit val case3Format = jsonFormat1(GadtCase3)
+
+ val format = GadtJsonFormat.create[CustomGADT]("gadtTypeField") {
+ case t1: CustomGADT.GadtCase1 => "case1"
+ case t2: CustomGADT.GadtCase2 => "case2"
+ case t3: CustomGADT.GadtCase3 => "case3"
+ } {
+ case "case1" => case1Format
+ case "case2" => case2Format
+ case "case3" => case3Format
+ }
+
+ val referenceValue1 = CustomGADT.GadtCase1("4")
+ val referenceValue2 = CustomGADT.GadtCase2("Hi!")
+
+ val writtenJson1 = format.write(referenceValue1)
+ writtenJson1 should be("{\n \"field\": \"4\",\n\"gadtTypeField\": \"case1\"\n}".parseJson)
+
+ val writtenJson2 = format.write(referenceValue2)
+ writtenJson2 should be("{\"field\":\"Hi!\",\"gadtTypeField\":\"case2\"}".parseJson)
+
+ val parsedValue1 = format.read(writtenJson1)
+ val parsedValue2 = format.read(writtenJson2)
+
+ parsedValue1 should be(referenceValue1)
+ parsedValue2 should be(referenceValue2)
+ }
}
diff --git a/src/test/scala/com/drivergrp/core/MessagesTest.scala b/src/test/scala/xyz/driver/core/MessagesTest.scala
index 21fe30a..dc44ee1 100644
--- a/src/test/scala/com/drivergrp/core/MessagesTest.scala
+++ b/src/test/scala/xyz/driver/core/MessagesTest.scala
@@ -1,13 +1,13 @@
-package com.drivergrp.core
+package xyz.driver.core
import java.util.Locale
-import com.drivergrp.core.logging.Logger
-import com.drivergrp.core.messages.Messages
import com.typesafe.config.{ConfigException, ConfigFactory}
import org.mockito.Mockito._
import org.scalatest.mock.MockitoSugar
import org.scalatest.{FlatSpec, Matchers}
+import xyz.driver.core.logging.Logger
+import xyz.driver.core.messages.Messages
import scala.collection.JavaConversions._
@@ -33,11 +33,11 @@ class MessagesTest extends FlatSpec with Matchers with MockitoSugar {
val log = mock[Logger]
val messagesConfig = ConfigFactory.parseMap(
- englishLocaleMessages ++ Map(
- "zh.hello" -> "你好,世界!",
- "zh.greeting" -> "你好,{0}!",
- "zh.greetingFullName" -> "你好,{0} {1} {2}!"
- ))
+ englishLocaleMessages ++ Map(
+ "zh.hello" -> "你好,世界!",
+ "zh.greeting" -> "你好,{0}!",
+ "zh.greetingFullName" -> "你好,{0} {1} {2}!"
+ ))
val englishMessages = Messages.messages(messagesConfig, log, Locale.US)
val englishMessagesToo = Messages.messages(messagesConfig, log, Locale.ENGLISH)
@@ -50,7 +50,7 @@ class MessagesTest extends FlatSpec with Matchers with MockitoSugar {
englishMessagesToo("hello") should be(englishMessages("hello"))
englishMessagesToo("greeting", "Homer") should be(englishMessages("greeting", "Homer"))
englishMessagesToo("greetingFullName", "Homer", "J", "Simpson") should be(
- englishMessages("greetingFullName", "Homer", "J", "Simpson"))
+ englishMessages("greetingFullName", "Homer", "J", "Simpson"))
chineseMessages("hello") should be("你好,世界!")
chineseMessages("greeting", "Homer") should be("你好,Homer!")
@@ -63,7 +63,7 @@ class MessagesTest extends FlatSpec with Matchers with MockitoSugar {
val messagesConfig = ConfigFactory.parseMap(englishLocaleMessages)
an[ConfigException.Missing] should be thrownBy
- Messages.messages(messagesConfig, log, Locale.GERMAN)
+ Messages.messages(messagesConfig, log, Locale.GERMAN)
}
it should "log a problem, when there is no message for key" in {
diff --git a/src/test/scala/com/drivergrp/core/StatsTest.scala b/src/test/scala/xyz/driver/core/StatsTest.scala
index c4f449b..27ea1bd 100644
--- a/src/test/scala/com/drivergrp/core/StatsTest.scala
+++ b/src/test/scala/xyz/driver/core/StatsTest.scala
@@ -1,11 +1,11 @@
-package com.drivergrp.core
+package xyz.driver.core
-import com.drivergrp.core.logging.Logger
-import com.drivergrp.core.stats.LogStats
-import com.drivergrp.core.time.{Time, TimeRange}
+import org.mockito.Mockito._
import org.scalatest.mock.MockitoSugar
import org.scalatest.{FlatSpec, Matchers}
-import org.mockito.Mockito._
+import xyz.driver.core.logging.Logger
+import xyz.driver.core.stats.LogStats
+import xyz.driver.core.time.{Time, TimeRange}
class StatsTest extends FlatSpec with Matchers with MockitoSugar {
diff --git a/src/test/scala/xyz/driver/core/TestTypes.scala b/src/test/scala/xyz/driver/core/TestTypes.scala
new file mode 100644
index 0000000..bb25deb
--- /dev/null
+++ b/src/test/scala/xyz/driver/core/TestTypes.scala
@@ -0,0 +1,14 @@
+package xyz.driver.core
+
+object TestTypes {
+
+ sealed trait CustomGADT {
+ val field: String
+ }
+
+ object CustomGADT {
+ final case class GadtCase1(field: String) extends CustomGADT
+ final case class GadtCase2(field: String) extends CustomGADT
+ final case class GadtCase3(field: String) extends CustomGADT
+ }
+}
diff --git a/src/test/scala/com/drivergrp/core/TimeTest.scala b/src/test/scala/xyz/driver/core/TimeTest.scala
index b928413..76ef42c 100644
--- a/src/test/scala/com/drivergrp/core/TimeTest.scala
+++ b/src/test/scala/xyz/driver/core/TimeTest.scala
@@ -1,13 +1,13 @@
-package com.drivergrp.core
+package xyz.driver.core
import java.util.TimeZone
-import com.drivergrp.core.time.{Time, _}
-import org.scalacheck.{Arbitrary, Gen}
-import org.scalatest.{FlatSpec, Matchers}
-import org.scalatest.prop.Checkers
import org.scalacheck.Arbitrary._
import org.scalacheck.Prop.BooleanOperators
+import org.scalacheck.{Arbitrary, Gen}
+import org.scalatest.prop.Checkers
+import org.scalatest.{FlatSpec, Matchers}
+import xyz.driver.core.time.{Time, _}
import scala.concurrent.duration._
@@ -56,7 +56,7 @@ class TimeTest extends FlatSpec with Matchers with Checkers {
it should "have ordering defined correctly" in {
Seq(Time(321L), Time(123L), Time(231L)).sorted should
- contain theSameElementsInOrderAs Seq(Time(123L), Time(231L), Time(321L))
+ contain theSameElementsInOrderAs Seq(Time(123L), Time(231L), Time(321L))
check { times: List[Time] =>
times.sorted.sliding(2).filter(_.size == 2).forall {