Fix zipalign tests with GetExecutableDirectory

Test: Self-tested
Bug: NA
Change-Id: Idc15c0e028b74a2b38c26af0e7d4a51f32210145
diff --git a/tools/zipalign/tests/src/align_test.cpp b/tools/zipalign/tests/src/align_test.cpp
index b8f2e15..073a156 100644
--- a/tools/zipalign/tests/src/align_test.cpp
+++ b/tools/zipalign/tests/src/align_test.cpp
@@ -4,12 +4,21 @@
 #include "ZipAlign.h"
 
 #include <stdio.h>
+#include <string>
+
+#include <android-base/file.h>
 
 using namespace android;
 
+static std::string GetTestPath(const std::string& filename) {
+  static std::string test_data_dir = android::base::GetExecutableDirectory() + "/tests/data/";
+  return test_data_dir + filename;
+}
+
 TEST(Align, Unaligned) {
-  const char* src = "tests/data/unaligned.zip";
-  const char* dst = "tests/data/unaligned_out.zip";
-  int result = process(src, dst, 4, true, false, 4096);
+  const std::string src = GetTestPath("unaligned.zip");
+  const std::string dst = GetTestPath("unaligned_out.zip");
+
+  int result = process(src.c_str(), dst.c_str(), 4, true, false, 4096);
   ASSERT_EQ(0, result);
 }