/** * Copyright 2015-2016 Red Hat, Inc, and individual contributors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.wildfly.swarm.monitor; import org.junit.Assert; import org.junit.Test; import org.wildfly.swarm.health.HealthStatus; import org.wildfly.swarm.monitor.runtime.HealthAnnotationProcessor; /** * @author Heiko Braun */ public class MonitorTest { // see https://issues.jboss.org/browse/SWARM-505 @Test public void testAttributes() { HealthStatus healthStatus = HealthStatus.named("test") .up() .withAttribute("a", "b") .withAttribute("c", "d"); String message = healthStatus.getMessage().get(); Assert.assertTrue("Expected a", message.contains("a")); Assert.assertTrue("Expected c", message.contains("c")); System.out.println(message); } @Test public void testPathStructures() { StringBuilder sb = new StringBuilder(); HealthAnnotationProcessor.safeAppend(sb, "jboss-web"); HealthAnnotationProcessor.safeAppend(sb, "/webcontext"); HealthAnnotationProcessor.safeAppend(sb, "/app"); Assert.assertEquals("/jboss-web/webcontext/app", sb.toString()); // -- sb = new StringBuilder(); HealthAnnotationProcessor.safeAppend(sb, "jboss-web/"); HealthAnnotationProcessor.safeAppend(sb, "/webcontext"); HealthAnnotationProcessor.safeAppend(sb, "app"); Assert.assertEquals("/jboss-web/webcontext/app", sb.toString()); // -- sb = new StringBuilder(); HealthAnnotationProcessor.safeAppend(sb, "jboss-web"); HealthAnnotationProcessor.safeAppend(sb, "webcontext"); HealthAnnotationProcessor.safeAppend(sb, "app"); Assert.assertEquals("/jboss-web/webcontext/app", sb.toString()); // -- sb = new StringBuilder(); HealthAnnotationProcessor.safeAppend(sb, "jboss-web/"); HealthAnnotationProcessor.safeAppend(sb, "webcontext/"); HealthAnnotationProcessor.safeAppend(sb, "app/"); Assert.assertEquals("/jboss-web/webcontext/app", sb.toString()); // -- sb = new StringBuilder(); HealthAnnotationProcessor.safeAppend(sb, "/jboss-web/"); HealthAnnotationProcessor.safeAppend(sb, "/webcontext/"); HealthAnnotationProcessor.safeAppend(sb, "/app/"); Assert.assertEquals("/jboss-web/webcontext/app", sb.toString()); } }