1/** 2 * Copyright (c) 2008, http://www.snakeyaml.org 3 * 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 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 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. 15 */ 16package org.yaml.snakeyaml.tokens; 17 18import junit.framework.TestCase; 19 20import org.yaml.snakeyaml.error.Mark; 21import org.yaml.snakeyaml.error.YAMLException; 22import org.yaml.snakeyaml.tokens.Token.ID; 23 24public class TagTokenTest extends TestCase { 25 26 public void testGetArguments() { 27 Mark mark = new Mark("test1", 0, 0, 0, "*The first line.\nThe last line.", 0); 28 TagToken token = new TagToken(new TagTuple("!foo", "!bar"), mark, mark); 29 assertEquals("value=[!foo, !bar]", token.getArguments()); 30 } 31 32 public void testNoMarks() { 33 Mark mark = new Mark("test1", 0, 0, 0, "*The first line.\nThe last line.", 0); 34 try { 35 new TagToken(new TagTuple("!foo", "!bar"), null, mark); 36 fail("Token without start mark should not be accepted."); 37 } catch (YAMLException e) { 38 assertEquals("Token requires marks.", e.getMessage()); 39 } 40 try { 41 new TagToken(new TagTuple("!foo", "!bar"), mark, null); 42 fail("Token without end mark should not be accepted."); 43 } catch (YAMLException e) { 44 assertEquals("Token requires marks.", e.getMessage()); 45 } 46 } 47 48 public void testNoTag() { 49 try { 50 Mark mark = new Mark("test1", 0, 0, 0, "*The first line.\nThe last line.", 0); 51 new TagToken(new TagTuple("!foo", null), mark, mark); 52 fail("Marks must be provided."); 53 } catch (NullPointerException e) { 54 assertEquals("Suffix must be provided.", e.getMessage()); 55 } 56 } 57 58 public void testGetTokenId() { 59 Mark mark = new Mark("test1", 0, 0, 0, "*The first line.\nThe last line.", 0); 60 TagToken token = new TagToken(new TagTuple("!foo", "!bar"), mark, mark); 61 assertEquals(ID.Tag, token.getTokenId()); 62 } 63} 64