2 * Copyright © 2016-2017 European Support Limited
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package org.openecomp.sdc.logging.slf4j;
19 import static org.testng.Assert.assertEquals;
21 import java.util.Collections;
22 import java.util.EnumMap;
24 import java.util.UUID;
25 import org.openecomp.sdc.logging.slf4j.SLF4JLoggingServiceProvider.ContextField;
26 import org.openecomp.sdc.logging.spi.LoggingContextService;
33 class ContextPropagationTestHelper {
35 private static final Map<ContextField, String> EMPTY_CONTEXT =
36 Collections.unmodifiableMap(new EnumMap<>(ContextField.class));
38 static Map<ContextField, String> putUniqueValues(LoggingContextService ctx) {
40 Map<ContextField, String> values = new EnumMap<>(ContextField.class);
42 String service = UUID.randomUUID().toString();
43 ctx.putServiceName(service);
44 values.put(ContextField.SERVICE_NAME, service);
46 String partner = UUID.randomUUID().toString();
47 ctx.putPartnerName(partner);
48 values.put(ContextField.PARTNER_NAME, partner);
50 String request = UUID.randomUUID().toString();
51 ctx.putRequestId(request);
52 values.put(ContextField.REQUEST_ID, request);
57 static void assertContextFields(Map<ContextField, String> values, String error) {
59 for (ContextField f : ContextField.values()) {
60 assertEquals(MDC.get(f.asKey()), values.get(f), error);
64 static void assertContextEmpty(String error) {
65 assertContextFields(EMPTY_CONTEXT, error);