1#!/bin/bash
2#
3# Copyright 2016 The Android Open Source Project
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9#      http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16
17plugin=libopenjdkjvmtid.so
18agent=libtiagentd.so
19if  [[ "$@" == *"-O"* ]]; then
20  agent=libtiagent.so
21  plugin=libopenjdkjvmti.so
22fi
23
24if [[ "$@" == *"--interpreter"* ]]; then
25  # On interpreter we are fully capable of providing the full jvmti api so we
26  # have a slightly different expected output.
27  # TODO We should really be changing this in the 'check' script.
28  patch -s expected.txt <interpreter-expected.patch
29fi
30
31export ANDROID_LOG_TAGS='*:f'
32./default-run "$@" --android-runtime-option -Xplugin:${plugin} \
33                   --android-runtime-option -Xcompiler-option \
34                   --android-runtime-option --debuggable \
35                   --args agent:${agent}=909-attach-agent
36return_status1=$?
37
38./default-run "$@" --android-runtime-option -Xcompiler-option \
39                   --android-runtime-option --debuggable \
40                   --args agent:${agent}=909-attach-agent
41return_status2=$?
42
43./default-run "$@" --args agent:${agent}=909-attach-agent --external-log-tags
44return_status3=$?
45
46./default-run "$@" --args agent:${agent}=909-attach-agent \
47                   --args disallow-debugging \
48                   --external-log-tags
49return_status4=$?
50
51# Make sure we don't silently ignore an early failure.
52(exit $return_status1) && \
53  (exit $return_status2) && \
54  (exit $return_status3) && \
55  (exit $return_status4)
56