summaryrefslogtreecommitdiffstats
path: root/junit4/src/test/java/org/junit/tests/experimental/theories/AllMembersSupplierTest.java
blob: e3fa0f0d14b29a17666a55ab3a3e26d184b3e28b (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
28
29
30
31
32
33
34
package org.junit.tests.experimental.theories;

import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;

import java.util.List;

import org.junit.Test;
import org.junit.experimental.theories.DataPoints;
import org.junit.experimental.theories.ParameterSignature;
import org.junit.experimental.theories.PotentialAssignment;
import org.junit.experimental.theories.internal.AllMembersSupplier;
import org.junit.runners.model.TestClass;

public class AllMembersSupplierTest {
	public static class HasDataPoints {
		@DataPoints
		public static Object[] objects= { 1, 2 };

		public HasDataPoints(Object obj) {
		}
	}

	@Test
	public void dataPointsAnnotationMeansTreatAsArrayOnly()
			throws SecurityException, NoSuchMethodException {
		List<PotentialAssignment> valueSources= new AllMembersSupplier(
				new TestClass(HasDataPoints.class))
				.getValueSources(ParameterSignature.signatures(
						HasDataPoints.class.getConstructor(Object.class))
						.get(0));
		assertThat(valueSources.size(), is(2));
	}
}