1343aa384602112df437fbe13a580c42e24f2c70cTor Norbye/*
2343aa384602112df437fbe13a580c42e24f2c70cTor Norbye * Copyright (C) 2010 The Android Open Source Project
3343aa384602112df437fbe13a580c42e24f2c70cTor Norbye *
4343aa384602112df437fbe13a580c42e24f2c70cTor Norbye * Licensed under the Eclipse Public License, Version 1.0 (the "License");
5343aa384602112df437fbe13a580c42e24f2c70cTor Norbye * you may not use this file except in compliance with the License.
6343aa384602112df437fbe13a580c42e24f2c70cTor Norbye * You may obtain a copy of the License at
7343aa384602112df437fbe13a580c42e24f2c70cTor Norbye *
8343aa384602112df437fbe13a580c42e24f2c70cTor Norbye *      http://www.eclipse.org/org/documents/epl-v10.php
9343aa384602112df437fbe13a580c42e24f2c70cTor Norbye *
10343aa384602112df437fbe13a580c42e24f2c70cTor Norbye * Unless required by applicable law or agreed to in writing, software
11343aa384602112df437fbe13a580c42e24f2c70cTor Norbye * distributed under the License is distributed on an "AS IS" BASIS,
12343aa384602112df437fbe13a580c42e24f2c70cTor Norbye * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13343aa384602112df437fbe13a580c42e24f2c70cTor Norbye * See the License for the specific language governing permissions and
14343aa384602112df437fbe13a580c42e24f2c70cTor Norbye * limitations under the License.
15343aa384602112df437fbe13a580c42e24f2c70cTor Norbye */
16343aa384602112df437fbe13a580c42e24f2c70cTor Norbye
17343aa384602112df437fbe13a580c42e24f2c70cTor Norbyepackage com.android.ide.eclipse.mock;
18343aa384602112df437fbe13a580c42e24f2c70cTor Norbye
19ae6a209f6f4030e1ebe20118f9455547e4cd50fcXavier Ducrohet
20ae6a209f6f4030e1ebe20118f9455547e4cd50fcXavier Ducrohetimport com.android.utils.ILogger;
21343aa384602112df437fbe13a580c42e24f2c70cTor Norbye
22343aa384602112df437fbe13a580c42e24f2c70cTor Norbyeimport junit.framework.Assert;
23343aa384602112df437fbe13a580c42e24f2c70cTor Norbye
24343aa384602112df437fbe13a580c42e24f2c70cTor Norbye/**
25343aa384602112df437fbe13a580c42e24f2c70cTor Norbye * Implementation of {@link ILogger} suitable for test use; will fail the current test if
26343aa384602112df437fbe13a580c42e24f2c70cTor Norbye * {@link #error} is called, and prints everything else to standard error.
27343aa384602112df437fbe13a580c42e24f2c70cTor Norbye */
28343aa384602112df437fbe13a580c42e24f2c70cTor Norbyepublic class TestLogger implements ILogger {
29343aa384602112df437fbe13a580c42e24f2c70cTor Norbye
30ab36f4e7488358dea4ab6b54ee2b7bef3da0232bTor Norbye    @Override
31343aa384602112df437fbe13a580c42e24f2c70cTor Norbye    public void error(Throwable t, String errorFormat, Object... args) {
32343aa384602112df437fbe13a580c42e24f2c70cTor Norbye        String message = String.format(errorFormat, args);
33343aa384602112df437fbe13a580c42e24f2c70cTor Norbye        if (t != null) {
34343aa384602112df437fbe13a580c42e24f2c70cTor Norbye            message = t.toString() + ":" + message; //$NON-NLS-1$
35343aa384602112df437fbe13a580c42e24f2c70cTor Norbye        }
36343aa384602112df437fbe13a580c42e24f2c70cTor Norbye        Assert.fail(message);
37343aa384602112df437fbe13a580c42e24f2c70cTor Norbye    }
38343aa384602112df437fbe13a580c42e24f2c70cTor Norbye
39ab36f4e7488358dea4ab6b54ee2b7bef3da0232bTor Norbye    @Override
40ae6a209f6f4030e1ebe20118f9455547e4cd50fcXavier Ducrohet    public void info(String msgFormat, Object... args) {
41343aa384602112df437fbe13a580c42e24f2c70cTor Norbye        System.out.println(String.format(msgFormat, args));
42343aa384602112df437fbe13a580c42e24f2c70cTor Norbye    }
43343aa384602112df437fbe13a580c42e24f2c70cTor Norbye
44ab36f4e7488358dea4ab6b54ee2b7bef3da0232bTor Norbye    @Override
45ae6a209f6f4030e1ebe20118f9455547e4cd50fcXavier Ducrohet    public void verbose(String msgFormat, Object... args) {
46ae6a209f6f4030e1ebe20118f9455547e4cd50fcXavier Ducrohet        info(msgFormat, args);
47ae6a209f6f4030e1ebe20118f9455547e4cd50fcXavier Ducrohet    }
48ae6a209f6f4030e1ebe20118f9455547e4cd50fcXavier Ducrohet
49ae6a209f6f4030e1ebe20118f9455547e4cd50fcXavier Ducrohet    @Override
50343aa384602112df437fbe13a580c42e24f2c70cTor Norbye    public void warning(String warningFormat, Object... args) {
51343aa384602112df437fbe13a580c42e24f2c70cTor Norbye        System.err.println(String.format(warningFormat, args));
52343aa384602112df437fbe13a580c42e24f2c70cTor Norbye    }
53343aa384602112df437fbe13a580c42e24f2c70cTor Norbye
54343aa384602112df437fbe13a580c42e24f2c70cTor Norbye}
55