summaryrefslogtreecommitdiffstats
path: root/src/test/java/com/btr/proxy/util/PListParserTest.java
blob: 98ea57b9c1fc4ec90641acd622f83c2acba1499c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
package com.btr.proxy.util;

import static org.junit.Assert.*;

import java.io.File;
import java.io.IOException;
import org.junit.BeforeClass;
import org.junit.Test;

import com.btr.proxy.TestUtil;
import com.btr.proxy.util.PListParser.Dict;
import com.btr.proxy.util.PListParser.XmlParseException;

/*****************************************************************************
 *  
 * @author Bernd Rosstauscher (proxyvole@rosstauscher.de) Copyright 2009
 ****************************************************************************/

public class PListParserTest {
    
	private static final String TEST_SETTINGS =  TestUtil.class.getResource("/").getFile() + "data"+File.separator+"osx"+File.separator+"osx_all.plist";
	
	private static Dict pList;

	/*************************************************************************
	 * Setup the dictionary from the test data file.
	 ************************************************************************/
	@BeforeClass
	public static void setupClass() throws XmlParseException,
			IOException {
		pList = PListParser.load(new File(TEST_SETTINGS));
	}
	
	/**
	 * Test method for {@link com.btr.proxy.util.PListParser#load(java.io.File)}.
	 */
	@Test
	public void testLoadFile() {
		pList.dump();
		assertTrue(pList.size() > 0);
	}
	
	/*************************************************************************
	 * Test method
	 ************************************************************************/
	
	@Test
	public void testStructure() {
		String currentSet = (String) pList.get("CurrentSet");
		assertNotNull(currentSet);
		Object networkServices = pList.get("NetworkServices");
		assertTrue(networkServices instanceof Dict);
	}
	
	/*************************************************************************
	 * Test method
	 ************************************************************************/
	
	@Test
	public void testNavigate() {
		Object result = pList.getAtPath("NetworkServices/299B07C0-D0E0-4840-8486-9E77B9ED84DB/AppleTalk");
		assertNotNull(result);
		assertTrue(result instanceof Dict);
	}

	/*************************************************************************
	 * Test method
	 ************************************************************************/
	
	@Test
	public void testNavigate2() {
		Object result = pList.getAtPath("/NetworkServices/299B07C0-D0E0-4840-8486-9E77B9ED84DB/AppleTalk");
		assertNotNull(result);
		assertTrue(result instanceof Dict);
	}

	/*************************************************************************
	 * Test method
	 ************************************************************************/
	
	@Test
	public void testNavigate3() {
		Object result = pList.getAtPath("/NetworkServices/299B07C0-D0E0-4840-8486-9E77B9ED84DB/AppleTalk/");
		assertNotNull(result);
		assertTrue(result instanceof Dict);
	}

	/*************************************************************************
	 * Test method
	 ************************************************************************/
	
	@Test
	public void testNavigate4() {
		Object result = pList.getAtPath("/NetworkServices/299B07C0-D0E0-4840-8486-9E77B9ED84DB/AppleTalkXXX/");
		assertNull(result);
	}



}