blob: 9c37707b4ec77f36ea8ee088d697f4ba420cb5ca [file] [log] [blame]
Vladimir Marko421087b2018-02-27 11:00:17 +00001/*
2 * Copyright (C) 2018 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17#include "oatdump_test.h"
18
19namespace art {
20
21TEST_F(OatDumpTest, TestAppWithBootImage) {
Vladimir Markoa64c1ad2021-03-08 14:27:05 +000022 ASSERT_TRUE(GenerateAppOdexFile(Flavor::kDynamic, {"--runtime-arg", "-Xmx64M"}));
23 ASSERT_TRUE(Exec(Flavor::kDynamic, kModeOatWithBootImage, {}, kListAndCode));
Vladimir Marko421087b2018-02-27 11:00:17 +000024}
25TEST_F(OatDumpTest, TestAppWithBootImageStatic) {
26 TEST_DISABLED_FOR_NON_STATIC_HOST_BUILDS();
Vladimir Markoa64c1ad2021-03-08 14:27:05 +000027 ASSERT_TRUE(GenerateAppOdexFile(Flavor::kStatic, {"--runtime-arg", "-Xmx64M"}));
28 ASSERT_TRUE(Exec(Flavor::kStatic, kModeOatWithBootImage, {}, kListAndCode));
Vladimir Marko421087b2018-02-27 11:00:17 +000029}
30
Vladimir Markoffe26cc2019-02-26 09:51:56 +000031TEST_F(OatDumpTest, TestAppImageWithBootImage) {
32 TEST_DISABLED_WITHOUT_BAKER_READ_BARRIERS(); // GC bug, b/126305867
33 const std::string app_image_arg = "--app-image-file=" + GetAppImageName();
Vladimir Markoa64c1ad2021-03-08 14:27:05 +000034 ASSERT_TRUE(GenerateAppOdexFile(Flavor::kDynamic, {"--runtime-arg", "-Xmx64M", app_image_arg}));
35 ASSERT_TRUE(Exec(Flavor::kDynamic, kModeAppImage, {}, kListAndCode));
Vladimir Markoffe26cc2019-02-26 09:51:56 +000036}
37TEST_F(OatDumpTest, TestAppImageWithBootImageStatic) {
38 TEST_DISABLED_WITHOUT_BAKER_READ_BARRIERS(); // GC bug, b/126305867
39 TEST_DISABLED_FOR_NON_STATIC_HOST_BUILDS();
40 const std::string app_image_arg = "--app-image-file=" + GetAppImageName();
Vladimir Markoa64c1ad2021-03-08 14:27:05 +000041 ASSERT_TRUE(GenerateAppOdexFile(Flavor::kStatic, {"--runtime-arg", "-Xmx64M", app_image_arg}));
42 ASSERT_TRUE(Exec(Flavor::kStatic, kModeAppImage, {}, kListAndCode));
Vladimir Markoffe26cc2019-02-26 09:51:56 +000043}
44
Mathieu Chartier6b689ce2019-07-18 14:17:47 -070045TEST_F(OatDumpTest, TestAppImageInvalidPath) {
46 TEST_DISABLED_WITHOUT_BAKER_READ_BARRIERS(); // GC bug, b/126305867
47 TEST_DISABLED_FOR_NON_STATIC_HOST_BUILDS();
48 const std::string app_image_arg = "--app-image-file=" + GetAppImageName();
Vladimir Markoa64c1ad2021-03-08 14:27:05 +000049 ASSERT_TRUE(GenerateAppOdexFile(Flavor::kStatic, {"--runtime-arg", "-Xmx64M", app_image_arg}));
Mathieu Chartier6b689ce2019-07-18 14:17:47 -070050 SetAppImageName("missing_app_image.art");
Vladimir Markoa64c1ad2021-03-08 14:27:05 +000051 ASSERT_TRUE(Exec(Flavor::kStatic, kModeAppImage, {}, kListAndCode, /*expect_failure=*/true));
Mathieu Chartier6b689ce2019-07-18 14:17:47 -070052}
53
Vladimir Marko421087b2018-02-27 11:00:17 +000054} // namespace art