/** * Licensed to Apereo under one or more contributor license agreements. See the NOTICE file * distributed with this work for additional information regarding copyright ownership. Apereo * licenses this file to you 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 the * following location: * * <p>http://www.apache.org/licenses/LICENSE-2.0 * * <p>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.springframework.util.xml; import static org.mockito.Mockito.verify; import javax.xml.stream.XMLEventFactory; import javax.xml.stream.util.XMLEventConsumer; import org.junit.Before; import org.junit.Test; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; import org.xml.sax.SAXException; /** */ public class StaxEventLexicalContentHandlerTest { @Mock XMLEventConsumer consumer; @Mock XMLEventFactory factory; StaxEventLexicalContentHandler handler; @Before public void setUp() { MockitoAnnotations.initMocks(this); handler = new StaxEventLexicalContentHandler(consumer, factory); } @Test public void testIncludePublicId() throws SAXException { handler.startDTD( "html", "-//W3C//DTD HTML 4.01 Transitional//EN", "http://www.w3.org/TR/html4/loose.dtd"); Mockito.verify(factory) .createDTD( "<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">"); } @Test public void testIncludeSystemId() throws SAXException { handler.startDTD("html", null, "http://www.w3.org/TR/html4/loose.dtd"); Mockito.verify(factory) .createDTD("<!DOCTYPE html SYSTEM \"http://www.w3.org/TR/html4/loose.dtd\">"); } @Test public void testEmptySystemId() throws SAXException { handler.startDTD("html", null, StaxEventLexicalContentHandler.EMPTY_SYSTEM_IDENTIFIER); verify(factory).createDTD("<!DOCTYPE html>"); } }