From e7cf0ed69c3312b578056d82499a363d59d35b28 Mon Sep 17 00:00:00 2001 From: Andrew Bayer Date: Fri, 22 Jul 2011 20:03:23 +0000 Subject: [PATCH] MAPREDUCE-749. Make Sqoop unit tests more Hudson-friendly. Contributed by Aaron Kimball. From: Thomas White git-svn-id: https://svn.apache.org/repos/asf/incubator/sqoop/trunk@1149822 13f79535-47bb-0310-9956-ffa450edef68 --- build.xml | 8 +++ .../org/apache/hadoop/sqoop/AllTests.java | 7 +-- .../apache/hadoop/sqoop/ThirdPartyTests.java | 49 +++++++++++++++++++ 3 files changed, 58 insertions(+), 6 deletions(-) create mode 100644 src/test/org/apache/hadoop/sqoop/ThirdPartyTests.java diff --git a/build.xml b/build.xml index 2ee8ba49..d9e7f4d4 100644 --- a/build.xml +++ b/build.xml @@ -25,6 +25,7 @@ to call at top-level: ant deploy-contrib compile-core-test + @@ -76,6 +77,11 @@ to call at top-level: ant deploy-contrib compile-core-test --> + + + @@ -91,6 +97,8 @@ to call at top-level: ant deploy-contrib compile-core-test + diff --git a/src/test/org/apache/hadoop/sqoop/AllTests.java b/src/test/org/apache/hadoop/sqoop/AllTests.java index d60bb6ff..d86ae107 100644 --- a/src/test/org/apache/hadoop/sqoop/AllTests.java +++ b/src/test/org/apache/hadoop/sqoop/AllTests.java @@ -21,9 +21,6 @@ import org.apache.hadoop.sqoop.hive.TestHiveImport; import org.apache.hadoop.sqoop.lib.TestFieldFormatter; import org.apache.hadoop.sqoop.lib.TestRecordParser; -import org.apache.hadoop.sqoop.manager.LocalMySQLTest; -import org.apache.hadoop.sqoop.manager.MySQLAuthTest; -import org.apache.hadoop.sqoop.manager.OracleManagerTest; import org.apache.hadoop.sqoop.manager.TestHsqldbManager; import org.apache.hadoop.sqoop.manager.TestSqlManager; import org.apache.hadoop.sqoop.orm.TestClassWriter; @@ -52,14 +49,12 @@ public static Test suite() { suite.addTestSuite(TestMultiCols.class); suite.addTestSuite(TestOrderBy.class); suite.addTestSuite(TestWhere.class); - suite.addTestSuite(LocalMySQLTest.class); - suite.addTestSuite(MySQLAuthTest.class); suite.addTestSuite(TestHiveImport.class); suite.addTestSuite(TestRecordParser.class); suite.addTestSuite(TestFieldFormatter.class); suite.addTestSuite(TestImportOptions.class); suite.addTestSuite(TestParseMethods.class); - suite.addTestSuite(OracleManagerTest.class); + suite.addTest(ThirdPartyTests.suite()); return suite; } diff --git a/src/test/org/apache/hadoop/sqoop/ThirdPartyTests.java b/src/test/org/apache/hadoop/sqoop/ThirdPartyTests.java new file mode 100644 index 00000000..5dd6447e --- /dev/null +++ b/src/test/org/apache/hadoop/sqoop/ThirdPartyTests.java @@ -0,0 +1,49 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.hadoop.sqoop; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +import org.apache.hadoop.sqoop.manager.LocalMySQLTest; +import org.apache.hadoop.sqoop.manager.MySQLAuthTest; +import org.apache.hadoop.sqoop.manager.OracleManagerTest; + +/** + * Test battery including all tests of vendor-specific ConnManager implementations. + * These tests likely aren't run by Apache Hudson, because they require configuring + * and using Oracle, MySQL, etc., which may have incompatible licenses with Apache. + */ +public final class ThirdPartyTests extends TestCase { + + private ThirdPartyTests() { } + + public static Test suite() { + TestSuite suite = new TestSuite("Tests vendor-specific ConnManager " + + "implementations in Sqoop"); + suite.addTestSuite(LocalMySQLTest.class); + suite.addTestSuite(MySQLAuthTest.class); + suite.addTestSuite(OracleManagerTest.class); + + return suite; + } + +} +