1package org.testng.remote.strprotocol;
2
3import java.util.Arrays;
4import java.util.List;
5
6import org.testng.Assert;
7import org.testng.annotations.DataProvider;
8import org.testng.annotations.Test;
9
10public class TestResultMessageTest {
11
12	private TestResultMessage testResultMessage = new TestResultMessage(0,
13			"suiteName", "testName", "className", "methodName",
14			"testDescriptor", "testinstanceName", new String[] {}, 0, 0,
15			"stackTrace", 1, 0);
16
17	@DataProvider(name = "testGen")
18	private Object[][] getP() {
19		return new Object[][] {
20				{ null, new Class[] { null }, Arrays.asList() },
21				{ new Object[] { new byte[] { 1 } },
22						new Class[] { byte[].class }, Arrays.asList("[1]") },
23				{ new Object[] { new short[] { 1 } },
24						new Class[] { short[].class }, Arrays.asList("[1]") },
25				{ new Object[] { new long[] { 1 } },
26						new Class[] { long[].class }, Arrays.asList("[1]") },
27				{ new Object[] { new int[] { 1, 2, 3 } },
28						new Class[] { int[].class }, Arrays.asList("[1,2,3]") },
29				{ new Object[] { new boolean[] { true, false } },
30						new Class[] { boolean[].class },
31						Arrays.asList("[true,false]") },
32				{ new Object[] { new char[] { 'a', 'b', 'c' } },
33						new Class[] { int[].class }, Arrays.asList("[a,b,c]") },
34				{ new Object[] { new float[] { 1.1f, 2.2f, 3.3f } },
35						new Class[] { float[].class },
36						Arrays.asList("[1.1,2.2,3.3]") },
37				{ new Object[] { new double[] { 1.1, 2.2, 3.3 } },
38						new Class[] { double[].class },
39						Arrays.asList("[1.1,2.2,3.3]") },
40				{ new Object[] { new Object[] { "this is a string", false } },
41						new Class[] { String.class, Boolean.class },
42						Arrays.asList("[this is a string,false]") },
43				{ new Object[] { new Object[] { null, "" } },
44						new Class[] { String.class, Boolean.class },
45						Arrays.asList("[null,\"\"]") }, };
46	}
47
48	@Test(dataProvider = "testGen")
49	public void toStringTest(Object[] objects, Class<?>[] objectClasses,
50			List<String> expectedResults) throws Exception {
51		String[] results = testResultMessage.toString(objects, objectClasses);
52		Assert.assertEquals(Arrays.asList(results), expectedResults);
53	}
54}
55