org.atinject.tck
Class Tck

java.lang.Object
  extended by org.atinject.tck.Tck

public class Tck
extends java.lang.Object

Manufactures the compatibility test suite. This TCK relies on JUnit. To integrate the TCK with your injector, create a JUnit test suite class that passes an injected Car instance to testsFor(Car):

 import junit.framework.Test;
 import org.atinject.tck.Tck;
 import org.atinject.tck.auto.Car;

 public class MyTck {
   public static Test suite() {
     Car car = new MyInjector().getInstance(Car.class);
     return Tck.testsFor(car,
         true /* supportsStatic */,
         true /* supportsPrivate */);
   }
 }

The static suite method that returns a Test is a JUnit convention. Feel free to run the returned tests in other ways.

Configure the injector as follows:

Static and private member injection support is optional, but if your injector supports those features, it must pass the respective tests. If static member injection is supported, the static members of the following types shall also be injected once: Convertible, Tire, and SpareTire.

Use your favorite JUnit tool to run the tests. For example, you can use your IDE or JUnit's command line runner:

 java -cp javax.inject-tck.jar:junit.jar:myinjector.jar \
     junit.textui.TestRunner MyTck


Method Summary
static junit.framework.Test testsFor(Car car, boolean supportsStatic, boolean supportsPrivate)
          Constructs a JUnit test suite for the given Car instance.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

testsFor

public static junit.framework.Test testsFor(Car car,
                                            boolean supportsStatic,
                                            boolean supportsPrivate)
Constructs a JUnit test suite for the given Car instance.

Parameters:
car - to test
supportsStatic - true if the injector supports static member injection
supportsPrivate - true if the injector supports private member injection
Throws:
java.lang.NullPointerException - if car is null
java.lang.ClassCastException - if car doesn't extend Convertible


Copyright (C) 2009 The JSR-330 Expert Group. Licensed under the Apache License, Version 2.0.