HAWQ-1037. Modify way to get HDFS port in TestHawqRegister

Project: http://git-wip-us.apache.org/repos/asf/incubator-hawq/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-hawq/commit/4b202a2b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-hawq/tree/4b202a2b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-hawq/diff/4b202a2b

Branch: refs/heads/master
Commit: 4b202a2baae5e3ecca0fc68f10a6d2e0f4cbecc9
Parents: 51cf863
Author: Chunling Wang <[email protected]>
Authored: Wed Aug 31 18:19:05 2016 +0800
Committer: ivan <[email protected]>
Committed: Fri Sep 9 10:00:14 2016 +0800

----------------------------------------------------------------------
 .../ManagementTool/test_hawq_register.cpp       | 122 +++++++++++++------
 1 file changed, 87 insertions(+), 35 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-hawq/blob/4b202a2b/src/test/feature/ManagementTool/test_hawq_register.cpp
----------------------------------------------------------------------
diff --git a/src/test/feature/ManagementTool/test_hawq_register.cpp 
b/src/test/feature/ManagementTool/test_hawq_register.cpp
index 0952bd5..2f4291b 100644
--- a/src/test/feature/ManagementTool/test_hawq_register.cpp
+++ b/src/test/feature/ManagementTool/test_hawq_register.cpp
@@ -3,18 +3,36 @@
 #include "lib/command.h"
 #include "lib/sql_util.h"
 #include "lib/string_util.h"
+#include "lib/hdfs_config.h"
 
 #include "gtest/gtest.h"
 
 using std::string;
 using hawq::test::SQLUtility;
 using hawq::test::Command;
+using hawq::test::HdfsConfig;
 
 /* This test suite may consume more than 80 seconds. */
 class TestHawqRegister : public ::testing::Test {
  public:
   TestHawqRegister() {}
   ~TestHawqRegister() {}
+  string getHdfsLocation() {
+    HdfsConfig hc;
+    string hostname = "";
+    int port = 0;
+    if (hc.isHA()) {
+      hc.getActiveNamenode(hostname, port);
+    }
+    else {
+      std::vector<std::string> hostList;
+      std::vector<int> portList;
+      hc.getNamenodes(hostList, portList);
+      hostname = hostList[0];
+      port = portList[0];
+    }
+    return hawq::test::stringFormat("hdfs://%s:%d", hostname.c_str(), port);
+  }
 };
 
 TEST_F(TestHawqRegister, TestUsage1SingleHawqFile) {
@@ -23,12 +41,14 @@ TEST_F(TestHawqRegister, TestUsage1SingleHawqFile) {
        string relativePath("/ManagementTool/test_hawq_register_hawq.paq");
        string filePath = rootPath + relativePath;
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath 
+ " hdfs://localhost:8020/hawq_register_hawq.paq"));
+    auto cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_hawq.paq", filePath.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.execute("create table hawqregister(i int) with (appendonly=true, 
orientation=parquet);");
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(0, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f hdfs://localhost:8020/hawq_register_hawq.paq hawqregister"));
+    cmd = hawq::test::stringFormat("hawq register -d %s -f 
%s/hawq_register_hawq.paq hawqregister", HAWQ_DB, getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.query("select * from hawqregister;", 3);
        util.execute("insert into hawqregister values(1);");
@@ -42,12 +62,14 @@ TEST_F(TestHawqRegister, TestUsage1SingleHiveFile) {
        string relativePath("/ManagementTool/test_hawq_register_hive.paq");
        string filePath = rootPath + relativePath;
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath 
+ " hdfs://localhost:8020/hawq_register_hive.paq"));
+    auto cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_hive.paq", filePath.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.execute("create table hawqregister(i int) with (appendonly=true, 
orientation=parquet);");
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(0, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f hdfs://localhost:8020/hawq_register_hive.paq hawqregister"));
+    cmd = hawq::test::stringFormat("hawq register -d %s -f 
%s/hawq_register_hive.paq hawqregister", HAWQ_DB, getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.query("select * from hawqregister;", 1);
        util.execute("insert into hawqregister values(1);");
@@ -63,12 +85,14 @@ TEST_F(TestHawqRegister, TestDataTypes) {
        string 
relativePath("/ManagementTool/test_hawq_register_data_types.paq");
        string filePath = rootPath + relativePath;
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath 
+ " hdfs://localhost:8020/hawq_register_data_types.paq"));
+    auto cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_data_types.paq", filePath.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.execute("create table hawqregister(a bool, b int2, c int2, d int4, 
e int8, f date, g float4, h float8, i varchar, j bytea, k char, l varchar) with 
(appendonly=true, orientation=parquet);");
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(0, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f hdfs://localhost:8020/hawq_register_data_types.paq 
hawqregister"));
+    cmd = hawq::test::stringFormat("hawq register -d %s -f 
%s/hawq_register_data_types.paq hawqregister", HAWQ_DB, 
getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.query("select * from hawqregister;", 1);
        util.execute("drop table hawqregister;");
@@ -83,12 +107,14 @@ TEST_F(TestHawqRegister, TestAllNULL) {
        string relativePath("/ManagementTool/test_hawq_register_null.paq");
        string filePath = rootPath + relativePath;
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath 
+ " hdfs://localhost:8020/hawq_register_data_types.paq"));
+    auto cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_data_types.paq", filePath.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.execute("create table hawqregister(a bool, b int2, c int2, d int4, 
e int8, f date, g float4, h float8, i varchar, j bytea, k char, l varchar) with 
(appendonly=true, orientation=parquet);");
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(0, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f hdfs://localhost:8020/hawq_register_data_types.paq 
hawqregister"));
+    cmd = hawq::test::stringFormat("hawq register -d %s -f 
%s/hawq_register_data_types.paq hawqregister", HAWQ_DB, 
getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.query("select * from hawqregister;", 1);
        util.execute("drop table hawqregister;");
@@ -102,24 +128,33 @@ TEST_F(TestHawqRegister, TestFiles) {
        relativePath = "/ManagementTool/test_hawq_register_hive.paq";
        string filePath2 = rootPath + relativePath;
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -mkdir -p 
hdfs://localhost:8020/hawq_register_test/t/t"));
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath1 
+ " hdfs://localhost:8020/hawq_register_test/hawq1.paq"));
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath1 
+ " hdfs://localhost:8020/hawq_register_test/hawq2.paq"));
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath1 
+ " hdfs://localhost:8020/hawq_register_test/t/hawq.paq"));
-
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath2 
+ " hdfs://localhost:8020/hawq_register_test/hive1.paq"));
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath2 
+ " hdfs://localhost:8020/hawq_register_test/hive2.paq"));
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath2 
+ " hdfs://localhost:8020/hawq_register_test/t/hive.paq"));
+    auto cmd = hawq::test::stringFormat("hadoop fs -mkdir -p %s 
%s/hawq_register_test/t/t", filePath1.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
+    cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_test/hawq1.paq", filePath1.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
+    cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_test/hawq2.paq", filePath1.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
+    cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_test/t/hawq.paq", filePath1.c_str(), 
getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
+
+    cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_test/hive1.paq", filePath2.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
+    cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_test/hive2.paq", filePath2.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
+    cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_test/t/hive.paq", filePath2.c_str(), 
getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.execute("create table hawqregister(i int) with (appendonly=true, 
orientation=parquet);");
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(0, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f hdfs://localhost:8020/hawq_register_test hawqregister"));
+    cmd = hawq::test::stringFormat("hawq register -d %s -f 
%s/hawq_register_test hawqregister", HAWQ_DB, getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.query("select * from hawqregister;", 12);
        util.execute("insert into hawqregister values(1);");
        util.query("select * from hawqregister;", 13);
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -rm -r 
hdfs://localhost:8020/hawq_register_test"));
+    cmd = hawq::test::stringFormat("hadoop fs -rm -r %s/hawq_register_test", 
getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
        util.execute("drop table hawqregister;");
 }
 
@@ -129,15 +164,18 @@ TEST_F(TestHawqRegister, TestUsage1HashDistributedTable) {
        string relativePath("/ManagementTool/test_hawq_register_hawq.paq");
        string filePath = rootPath + relativePath;
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath 
+ " hdfs://localhost:8020/hawq_register_hawq.paq"));
+    auto cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_hawq.paq", filePath.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.execute("create table hawqregister(i int) with (appendonly=true, 
orientation=parquet) distributed by (i);");
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(1, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f hdfs://localhost:8020/hawq_register_hawq.paq hawqregister"));
+    cmd = hawq::test::stringFormat("hawq register -d %s -f 
%s/hawq_register_hawq.paq hawqregister", HAWQ_DB, getHdfsLocation().c_str());
+       EXPECT_EQ(1, Command::getCommandStatus(cmd));
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -rm 
hdfs://localhost:8020/hawq_register_hawq.paq"));
+    cmd = hawq::test::stringFormat("hadoop fs -rm -r %s 
%s/hawq_register_hawq.paq", filePath.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
        util.execute("drop table hawqregister;");
 }
 
@@ -147,15 +185,18 @@ TEST_F(TestHawqRegister, TestUsage1NotParquetFile) {
        string relativePath("/ManagementTool/test_hawq_register_not_paq");
        string filePath = rootPath + relativePath;
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath 
+ " hdfs://localhost:8020/hawq_register_test_not_paq"));
+    auto cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_test_not_paq", filePath.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.execute("create table hawqregister(i int) with (appendonly=true, 
orientation=parquet);");
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(1, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f hdfs://localhost:8020/hawq_register_test_not_paq hawqregister"));
+    cmd = hawq::test::stringFormat("hawq register -d %s -f 
%s/hawq_register_test_not_paq hawqregister", HAWQ_DB, 
getHdfsLocation().c_str());
+       EXPECT_EQ(1, Command::getCommandStatus(cmd));
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -rm 
hdfs://localhost:8020/hawq_register_test_not_paq"));
+    cmd = hawq::test::stringFormat("hadoop fs -rm 
%s/hawq_register_test_not_paq", getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
        util.execute("drop table hawqregister;");
 }
 
@@ -165,15 +206,18 @@ TEST_F(TestHawqRegister, TestUsage1NotParquetTable) {
        string relativePath("/ManagementTool/test_hawq_register_hawq.paq");
        string filePath = rootPath + relativePath;
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath 
+ " hdfs://localhost:8020/hawq_register_hawq.paq"));
+    auto cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_hawq.paq", filePath.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.execute("create table hawqregister(i int);");
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(1, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f hdfs://localhost:8020/hawq_register_hawq.paq hawqregister"));
+    cmd = hawq::test::stringFormat("hawq register -d %s -f 
%s/hawq_register_hawq.paq hawqregister", HAWQ_DB, getHdfsLocation().c_str());
+       EXPECT_EQ(1, Command::getCommandStatus(cmd));
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -rm 
hdfs://localhost:8020/hawq_register_hawq.paq"));
+    cmd = hawq::test::stringFormat("hadoop fs -rm  %s/hawq_register_hawq.paq", 
getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
        util.execute("drop table hawqregister;");
 }
 
@@ -183,7 +227,8 @@ TEST_F(TestHawqRegister, TestUsage1FileNotExist) {
        util.execute("create table hawqregister(i int);");
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(1, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f /hdfs://localhost:8020hawq_register_file_not_exist 
hawqregister"));
+    auto cmd = hawq::test::stringFormat("hawq register -d %s -f 
%shawq_register_file_not_exist hawqregister", HAWQ_DB, 
getHdfsLocation().c_str());
+       EXPECT_EQ(1, Command::getCommandStatus(cmd));
        util.query("select * from hawqregister;", 0);
 
        util.execute("drop table hawqregister;");
@@ -195,15 +240,18 @@ TEST_F(TestHawqRegister, TestUsage1NotHDFSPath) {
        string relativePath("/ManagementTool/test_hawq_register_hawq.paq");
        string filePath = rootPath + relativePath;
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath 
+ " hdfs://localhost:8020/hawq_register_hawq.paq"));
+    auto cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_hawq.paq", filePath.c_str(), getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
 
        util.execute("create table hawqregister(i int);");
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(1, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f /hawq_register_hawq.paq hawqregister"));
+    cmd = hawq::test::stringFormat("hawq register -d %s -f 
%s/hawq_register_hawq.paq hawqregister", HAWQ_DB, getHdfsLocation().c_str());
+       EXPECT_EQ(1, Command::getCommandStatus(cmd));
        util.query("select * from hawqregister;", 0);
 
-       EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -rm 
hdfs://localhost:8020/hawq_register_hawq.paq"));
+    cmd = hawq::test::stringFormat("hadoop fs -rm %s/hawq_register_hawq.paq", 
getHdfsLocation().c_str());
+       EXPECT_EQ(0, Command::getCommandStatus(cmd));
        util.execute("drop table hawqregister;");
 }
 
@@ -212,10 +260,12 @@ TEST_F(TestHawqRegister, TestUsage1ParquetRandomly) {
   string rootPath(util.getTestRootPath());
   string relativePath("/ManagementTool/test_hawq_register_hawq.paq");
   string filePath = rootPath + relativePath;
-  EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath + " 
hdfs://localhost:8020/hawq_register_hawq.paq"));
+  auto cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_hawq.paq", filePath.c_str(), getHdfsLocation().c_str());
+  EXPECT_EQ(0, Command::getCommandStatus(cmd));
   util.execute("drop table if exists nt;");
   util.execute("create table nt(i int) with (appendonly=true, 
orientation=parquet);");
-  EXPECT_EQ(0, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f hdfs://localhost:8020/hawq_register_hawq.paq nt"));
+  cmd = hawq::test::stringFormat("hawq register -d %s -f 
%s/hawq_register_hawq.paq nt", HAWQ_DB, getHdfsLocation().c_str());
+  EXPECT_EQ(0, Command::getCommandStatus(cmd));
        util.query("select * from nt;", 3);
        util.execute("insert into nt values(1);");
        util.query("select * from nt;", 4);
@@ -227,10 +277,12 @@ TEST_F(TestHawqRegister, TestUsage1ParquetRandomly2) {
   string rootPath(util.getTestRootPath());
   string relativePath("/ManagementTool/test_hawq_register_hawq.paq");
   string filePath = rootPath + relativePath;
-  EXPECT_EQ(0, Command::getCommandStatus("hadoop fs -put -f " + filePath + " 
hdfs://localhost:8020/hawq_register_hawq.paq"));
+  auto cmd = hawq::test::stringFormat("hadoop fs -put -f %s 
%s/hawq_register_hawq.paq", filePath.c_str(), getHdfsLocation().c_str());
+  EXPECT_EQ(0, Command::getCommandStatus(cmd));
   util.execute("drop table if exists nt;");
   util.execute("create table nt(i int) with (appendonly=true, 
orientation=parquet) distributed randomly;");
-  EXPECT_EQ(0, Command::getCommandStatus("hawq register -d " + (string) 
HAWQ_DB + " -f hdfs://localhost:8020/hawq_register_hawq.paq nt"));
+  cmd = hawq::test::stringFormat("hawq register -d %s -f 
%s/hawq_register_hawq.paq nt", HAWQ_DB, getHdfsLocation().c_str());
+  EXPECT_EQ(0, Command::getCommandStatus(cmd));
        util.query("select * from nt;", 3);
        util.execute("insert into nt values(1);");
        util.query("select * from nt;", 4);

Reply via email to