1b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov/** 211a89b445f3bde56bf07e6a0d04f0b0256dcb215Andrey Somov * Copyright (c) 2008, http://www.snakeyaml.org 3b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * 4b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * Licensed under the Apache License, Version 2.0 (the "License"); 5b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * you may not use this file except in compliance with the License. 6b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * You may obtain a copy of the License at 7b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * 8b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * http://www.apache.org/licenses/LICENSE-2.0 9b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * 10b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * Unless required by applicable law or agreed to in writing, software 11b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * distributed under the License is distributed on an "AS IS" BASIS, 12b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * See the License for the specific language governing permissions and 14b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov * limitations under the License. 15b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov */ 16b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somovpackage org.yaml.snakeyaml.types; 17b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov 18b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somovimport java.util.Map; 19b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somovimport java.util.Set; 20b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov 21b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somovimport org.yaml.snakeyaml.YamlDocument; 22b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov 23b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov/** 240d45790da742a74840302744e8bbe9ad4d93af90Andrey Somov * @see <a href="http://yaml.org/type/set.html"></a> 25b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov */ 26b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somovpublic class SetTagTest extends AbstractTest { 27b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov 28b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov @SuppressWarnings("unchecked") 29b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov public void testSet() { 30b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov YamlDocument document = new YamlDocument("types/set.yaml"); 31b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov Map<String, Set<String>> map = (Map<String, Set<String>>) document.getNativeData(); 32b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov assertEquals(2, map.size()); 33b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov Set<String> set1 = (Set<String>) map.get("baseball players"); 34b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov assertEquals(3, set1.size()); 35b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov assertTrue(set1.contains("Mark McGwire")); 36b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov assertTrue(set1.contains("Sammy Sosa")); 37b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov assertTrue(set1.contains("Ken Griffey")); 38b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov // 39b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov Set<String> set2 = (Set<String>) map.get("baseball teams"); 40b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov assertEquals(3, set2.size()); 41b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov assertTrue(set2.contains("Boston Red Sox")); 42b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov assertTrue(set2.contains("Detroit Tigers")); 43b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov assertTrue(set2.contains("New York Yankees")); 44b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov } 45b5f4ec3dfb1a49968ebcc1243da10af9a2dc54a2Andrey Somov} 46