| Previous | Next |
setName method
of the Product class.
First, we need a class ProductTest that extends
SpringUnitTest.
Next, we need a Spring configuration file called ProductTest.xml
that holds a bean of type SpringUnitContext and whose
ID is productTest.
The ProductTest class needs a property called
productTest of type SpringUnitContext.
Finally, we can write the code for the test of the method.
First we obtain a Product object from the
SpringUnitContext, along with the input value for the product's name,
and the expected value.
Next, we call the setName method with the
input value, read back that value and compare it with the expected value.
The following code excerpts show all of this.
Product.java (excerpt)
public class Product /* ... */ {
/* other methods not shown */
public void setName(String name) {
this.name = name;
}
private String name;
/* other fields not shown */
}
public class ProductTest extends SpringUnitTest {
/* other test methods not shown */
public void testName() throws Exception {
Product subject = getObject("subject");
String name = getObject("name");
String expected = getObject("expected");
subject.setName(name);
String actual = subject.getName();
assertTrue(expected.equals(actual));
}
/* setter/getter not shown */
private SpringUnitContext productTest;
}
ProductTest.xml (excerpt)
<beans> <import resource="classpath:ProductData.xml"/> <bean id="productTest" class="org.springunit.framework.SpringUnitContext"> <property name="data"> <map> <entry key="testName"> <map> <entry key="subject"> <ref bean="product1"/> </entry> <entry key="name"> <value>tuna feast</value> </entry> <entry key="expected"> <value>tuna feast</value> </entry> </map> </entry> <!-- other entries omitted --> </map> </property> </bean> </beans>
| Previous | Next |