From c629b3b1ee85e0cc2b70659105cede6a0012e6f6 Mon Sep 17 00:00:00 2001 From: Antonios Chalkiopoulos Date: Fri, 22 Aug 2014 23:09:39 +0100 Subject: Adding new tests --- .../spyglass/jdbc/JdbcSourceExampleTest.scala | 53 ++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 src/test/scala/parallelai/spyglass/jdbc/JdbcSourceExampleTest.scala (limited to 'src/test/scala/parallelai/spyglass/jdbc/JdbcSourceExampleTest.scala') diff --git a/src/test/scala/parallelai/spyglass/jdbc/JdbcSourceExampleTest.scala b/src/test/scala/parallelai/spyglass/jdbc/JdbcSourceExampleTest.scala new file mode 100644 index 0000000..845e763 --- /dev/null +++ b/src/test/scala/parallelai/spyglass/jdbc/JdbcSourceExampleTest.scala @@ -0,0 +1,53 @@ +package parallelai.spyglass.jdbc + +import org.scalatest.junit.JUnitRunner +import org.junit.runner.RunWith +import org.scalatest.FunSpec +import com.twitter.scalding.{Tsv, JobTest} +import org.slf4j.LoggerFactory +import cascading.tuple.{Tuple, Fields} + +/** + * Simple example of JDBCSource testing + */ +@RunWith(classOf[JUnitRunner]) +class JdbcSourceExampleTest extends FunSpec { + + val output = "src/test/resources/outputs/testOutput" + + val log = LoggerFactory.getLogger(this.getClass.getName) + + val sampleData = List( + (1, "c11", "c12", 11), + (2, "c21", "c22", 22) + ) + + JobTest("parallelai.spyglass.jdbc.example.JdbcSourceExample") + .arg("test", "") + .arg("app.conf.path", "app.conf") + .arg("output", output) + .arg("debug", "true") + .source( + new JDBCSource( + "db_name", + "com.mysql.jdbc.Driver", + "jdbc:mysql://:/?zeroDateTimeBehavior=convertToNull", + "user", + "password", + List("KEY_ID", "COL1", "COL2", "COL3"), + List("bigint(20)", "varchar(45)", "varchar(45)", "bigint(20)"), + List("key_id"), + new Fields("key_id", "col1", "col2", "col3")), sampleData) + .sink[Tuple](Tsv(output.format("get_list"))) { + outputBuffer => + log.debug("Output => " + outputBuffer) + + it("should return the mock data provided.") { + assert(outputBuffer.size === 2) + } + } + .run + .finish + + +} -- cgit v1.2.3