XLog { public static Logger.Builder tag(String tag) { return new Logger.Builder().tag(tag); } private  XLog(); static void init(); static void init(int logLevel); @Deprecated static void init(int logLevel, LogConfiguration logConfiguration); static void init(LogConfiguration logConfiguration); static void init(Printer... printers); static void init(int logLevel, Printer... printers); @Deprecated static void init(int logLevel, LogConfiguration logConfiguration, Printer... printers); static void init(LogConfiguration logConfiguration, Printer... printers); static Logger.Builder logLevel(int logLevel); static Logger.Builder tag(String tag); static Logger.Builder t(); static Logger.Builder nt(); static Logger.Builder st(int depth); static Logger.Builder st(String stackTraceOrigin, int depth); static Logger.Builder nst(); static Logger.Builder b(); static Logger.Builder nb(); static Logger.Builder jsonFormatter(JsonFormatter jsonFormatter); static Logger.Builder xmlFormatter(XmlFormatter xmlFormatter); static Logger.Builder throwableFormatter(ThrowableFormatter throwableFormatter); static Logger.Builder threadFormatter(ThreadFormatter threadFormatter); static Logger.Builder stackTraceFormatter(StackTraceFormatter stackTraceFormatter); static Logger.Builder borderFormatter(BorderFormatter borderFormatter); static Logger.Builder addObjectFormatter(Class<T> objectClass,
                                                      ObjectFormatter<? super T> objectFormatter); static Logger.Builder addInterceptor(Interceptor interceptor); static Logger.Builder printers(Printer... printers); static void v(Object object); static void v(Object[] array); static void v(String format, Object... args); static void v(String msg); static void v(String msg, Throwable tr); static void d(Object object); static void d(Object[] array); static void d(String format, Object... args); static void d(String msg); static void d(String msg, Throwable tr); static void i(Object object); static void i(Object[] array); static void i(String format, Object... args); static void i(String msg); static void i(String msg, Throwable tr); static void w(Object object); static void w(Object[] array); static void w(String format, Object... args); static void w(String msg); static void w(String msg, Throwable tr); static void e(Object object); static void e(Object[] array); static void e(String format, Object... args); static void e(String msg); static void e(String msg, Throwable tr); static void log(int logLevel, Object object); static void log(int logLevel, Object[] array); static void log(int logLevel, String format, Object... args); static void log(int logLevel, String msg); static void log(int logLevel, String msg, Throwable tr); static void json(String json); static void xml(String xml);  }
@Test public void testTag() { XLog.i(MESSAGE); assertLog(INFO, DEFAULT_TAG, MESSAGE); logsContainer.clear(); XLog.tag(CUSTOM_TAG).i(MESSAGE); assertLog(INFO, CUSTOM_TAG, MESSAGE); }