summaryrefslogtreecommitdiffstats
path: root/junit4/src/test/java/org/junit/tests/experimental/theories/extendingwithstubs/StringableObject.java
blob: 94d5b31a3c4f27568be5d8df2b7902d1676e3453 (plain)
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
package org.junit.tests.experimental.theories.extendingwithstubs;

import java.util.Arrays;

public class StringableObject {
	public Object obj;

	public StringableObject(Object obj) {
		this.obj = obj;
	}

	public Object stringableObject() {
		if (isListableArray())
			return Arrays.asList((Object[]) obj);
		else
			return obj;
	}

	private boolean isListableArray() {
		Class<?> type = obj.getClass();
		return type.isArray() && !type.getComponentType().isPrimitive();
	}
	
	@Override public String toString() {
		return stringableObject().toString();
	}
}