1d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot/*
2d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot * Copyright (C) 2012 The Android Open Source Project
3d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot *
4d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot * Licensed under the Apache License, Version 2.0 (the "License");
5d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot * you may not use this file except in compliance with the License.
6d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot * You may obtain a copy of the License at
7d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot *
8d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot *      http://www.apache.org/licenses/LICENSE-2.0
9d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot *
10d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot * Unless required by applicable law or agreed to in writing, software
11d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot * distributed under the License is distributed on an "AS IS" BASIS,
12d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot * See the License for the specific language governing permissions and
14d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot * limitations under the License.
15d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot */
16d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot
17d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabotpackage android.app;
18d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot
19d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabotimport android.os.Bundle;
20d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabotimport android.test.InstrumentationTestCase;
21d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot
22d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabotpublic class InstrumentationTest extends InstrumentationTestCase {
23d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot
24d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot    /**
25d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot     * Simple stress test for {@link Instrumentation#sendStatus(int, android.os.Bundle)}, to
26d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot     * ensure it can handle many rapid calls without failing.
27d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot     */
28d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot    public void testSendStatus() {
29d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot        for (int i = 0; i < 10000; i++) {
30d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot            Bundle bundle = new Bundle();
31d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot            bundle.putInt("iterations", i);
32d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot            getInstrumentation().sendStatus(-1, bundle);
33d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot        }
34d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot    }
35d733ec3b28ded8d2d4f6ab0498bc66a207cb6ad7Brett Chabot}
36