/** * {@link #setLogLevel(int)} implementation at instance level. * * @param logLevel log level. */ private synchronized void setInstanceLogLevel(int logLevel) { mLogLevelConfigured = true; AppCenterLog.setLogLevel(logLevel); }
AppCenterLog.setLogLevel(Log.WARN);
@Test public void setDefaultLogLevelRelease() { mApplicationInfo.flags = 0; AppCenter.start(mApplication, DUMMY_APP_SECRET, DummyService.class); verifyStatic(never()); AppCenterLog.setLogLevel(anyInt()); }
@Test public void doNotSetDefaultLogLevel() { AppCenter.setLogLevel(android.util.Log.VERBOSE); verifyStatic(); AppCenterLog.setLogLevel(android.util.Log.VERBOSE); AppCenter.start(mApplication, DUMMY_APP_SECRET, DummyService.class); verifyStatic(never()); AppCenterLog.setLogLevel(android.util.Log.WARN); }
@Test public void serializeContainerWithDefaultWriter() throws JSONException { /* Create a mock log container. */ LogContainer mockContainer = mock(LogContainer.class); /* Set log level to VERBOSE to instantiate JSONStringer for pretty JSON string. */ AppCenterLog.setLogLevel(Log.VERBOSE); LogSerializer serializer = new DefaultLogSerializer(); String json = serializer.serializeContainer(mockContainer); /* Remove new lines and spaces. */ json = json.replace("\n", "").replace(" ", ""); /* Set log level to ERROR to instantiate JSONStringer without indentations. */ AppCenterLog.setLogLevel(Log.ERROR); /* Verify. */ assertEquals(json, serializer.serializeContainer(mockContainer)); } }
@Test public void setDefaultLogLevelDebug() { AppCenter.start(mApplication, DUMMY_APP_SECRET, DummyService.class); verifyStatic(); AppCenterLog.setLogLevel(android.util.Log.WARN); }
@Test @SuppressWarnings("unchecked") public void onBeforeCallingWithAnotherLogLevel() throws Exception { /* Mock instances. */ String apiKey = UUIDUtils.randomUUID().toString(); HttpClient.CallTemplate callTemplate = getCallTemplate(); /* Change log level. */ AppCenterLog.setLogLevel(android.util.Log.WARN); /* Call onBeforeCalling with parameters. */ callTemplate.onBeforeCalling(mock(URL.class), mock(Map.class)); /* Verify. */ verifyStatic(never()); AppCenterLog.verbose(anyString(), anyString()); }
@Test public void setDefaultLogLevelDebug() { AppCenterLog.setLogLevel(Log.ASSERT); AppCenter.start(mApplication, UUIDUtils.randomUUID().toString()); assertEquals(Log.WARN, AppCenter.getLogLevel()); }
@Test @SuppressWarnings("unchecked") public void onBeforeCallingWithAnotherLogLevel() throws Exception { /* Mock instances. */ String appSecret = UUIDUtils.randomUUID().toString(); HttpClient.CallTemplate callTemplate = getCallTemplate(appSecret); /* Change log level. */ AppCenterLog.setLogLevel(android.util.Log.WARN); /* Call onBeforeCalling with parameters. */ callTemplate.onBeforeCalling(mock(URL.class), mock(Map.class)); /* Verify. */ verifyStatic(never()); AppCenterLog.verbose(anyString(), anyString()); }
@Test public void onBeforeCalling() throws Exception { /* Mock instances. */ URL url = new URL("http://mock/path/file"); String appSecret = UUIDUtils.randomUUID().toString(); String obfuscatedSecret = HttpUtils.hideSecret(appSecret); Map<String, String> headers = new HashMap<>(); headers.put("Another-Header", "Another-Value"); HttpClient.CallTemplate callTemplate = getCallTemplate(appSecret); AppCenterLog.setLogLevel(android.util.Log.VERBOSE); mockStatic(AppCenterLog.class); /* Call onBeforeCalling with parameters. */ callTemplate.onBeforeCalling(url, headers); /* Verify url log. */ verifyStatic(); AppCenterLog.verbose(anyString(), contains(url.toString())); /* Verify header log. */ for (Map.Entry<String, String> header : headers.entrySet()) { verifyStatic(); AppCenterLog.verbose(anyString(), contains(header.getValue())); } /* Put app secret to header. */ headers.put(AppCenterIngestion.APP_SECRET, appSecret); callTemplate.onBeforeCalling(url, headers); /* Verify app secret is in log. */ verifyStatic(); AppCenterLog.verbose(anyString(), contains(obfuscatedSecret)); }
headers.put("Another-Header", "Another-Value"); HttpClient.CallTemplate callTemplate = getCallTemplate(); AppCenterLog.setLogLevel(android.util.Log.VERBOSE); mockStatic(AppCenterLog.class);