151dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik/*
251dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik * Copyright (C) 2016 The Android Open Source Project
351dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik *
451dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik * Licensed under the Apache License, Version 2.0 (the "License");
551dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik * you may not use this file except in compliance with the License.
651dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik * You may obtain a copy of the License at
751dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik *
851dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik *      http://www.apache.org/licenses/LICENSE-2.0
951dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik *
1051dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik * Unless required by applicable law or agreed to in writing, software
1151dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik * distributed under the License is distributed on an "AS IS" BASIS,
1251dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1351dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik * See the License for the specific language governing permissions and
1451dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik * limitations under the License.
1551dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik */
1651dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik
1751dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craikpackage android.util.perftests;
1851dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik
1951dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craikimport android.perftests.utils.BenchmarkState;
2051dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craikimport android.perftests.utils.PerfStatusReporter;
2151dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craikimport android.support.test.filters.LargeTest;
2251dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craikimport android.support.test.runner.AndroidJUnit4;
2351dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik
2451dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craikimport android.util.Log;
2551dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik
2651dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craikimport org.junit.Rule;
2751dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craikimport org.junit.Test;
2851dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craikimport org.junit.runner.RunWith;
2951dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik
3051dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik@RunWith(AndroidJUnit4.class)
3151dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik@LargeTest
3251dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craikpublic class LogPerfTest {
3351dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik
3451dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik    private final String[] strings = new String[] {
3551dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik            "This is a test log string 1",
3651dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik            "This is a test log string 2",
3751dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik            "This is a test log string 3",
3851dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik            "This is a test log string 4",
3951dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik            "This is a test log string 5",
4051dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik    };
4151dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik
4251dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik    @Rule
4351dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik    public PerfStatusReporter mPerfStatusReporter = new PerfStatusReporter();
4451dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik
4551dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik    @Test
4651dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik    public void testLogPerf() {
4751dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik        BenchmarkState state = mPerfStatusReporter.getBenchmarkState();
4851dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik        int i = 0;
4951dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik        while (state.keepRunning()) {
5051dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik            Log.d("LogPerfTest", strings[(i++) % strings.length]);
5151dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik        }
5251dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik    }
5351dd1e51ecb11af67e4ea1fe41d600c5d7eaaf15Chris Craik}
54