summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Benjamin Barenblat <bbaren@google.com>2020-05-07 11:41:59 -0400
committerGravatar Benjamin Barenblat <bbaren@google.com>2020-05-18 15:06:25 -0400
commitf9adb234861d1321e0b8774db9aed57ebc6161f0 (patch)
tree4d4972749baa09bfc94fc8098f1e208e898409c3
parente05aa44e16cc9c47c8285b920415ac0f4763657a (diff)
Add a smoke test
Create a basic autopkgtest to ensure that Abseil got installed and links correctly.
-rw-r--r--debian/tests/control16
-rwxr-xr-xdebian/tests/smoke37
2 files changed, 53 insertions, 0 deletions
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 00000000..fbbf5129
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,16 @@
+# Copyright 2020 Google LLC
+#
+# Licensed 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
+#
+# https://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.
+
+Tests: smoke
+Depends: @, g++, libgtest-dev
diff --git a/debian/tests/smoke b/debian/tests/smoke
new file mode 100755
index 00000000..7c4b66fa
--- /dev/null
+++ b/debian/tests/smoke
@@ -0,0 +1,37 @@
+#!/bin/sh -eu
+# Copyright 2020 Google LLC
+#
+# Licensed 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
+#
+# https://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.
+
+readonly TMP="$(mktemp -d)"
+trap "rm -rf \"$TMP\"" EXIT
+cd "$TMP"
+
+cat >smoke.cc <<EOF
+#include <absl/strings/str_join.h>
+#include <gtest/gtest.h>
+
+#include <vector>
+
+namespace {
+
+TEST(AbseilTest, StrJoinWorks) {
+ std::vector<std::string> v = {"foo", "bar", "baz"};
+ EXPECT_EQ(absl::StrJoin(v, "-"), "foo-bar-baz");
+}
+
+} // namespace
+EOF
+
+g++ -o smoke smoke.cc -labsl_strings -lgtest -lgtest_main -pthread
+./smoke