, SRP, SRP. .
, SRP, - . , , .
PDF:
public class ScannerTest extends TestCase implements Display
{
public ScannerTest (String name) {
super (name);
}
public void testScan () {
Scanner scanner = new Scanner (this);
scanner.scan ();
assertEquals (new Item ("Cornflakes"), lastItem);
}
void displayItem (Item item) {
lastItem = item;
}
private Item lastItem;
}
Mock:
public class DisplayMock implements Display
{
void displayItem (Item item) {
lastItem = item;
}
public Item getItem() {
return lastItem;
}
private Item lastItem;
}
public class ScannerTest extends TestCase
{
public ScannerTest (String name) {
super (name);
}
public void testScan () {
DisplayMock dispMock = new DisplayMock();
Scanner scanner = new Scanner (dispMock );
scanner.scan ();
assertEquals (new Item ("Cornflakes"), dispMock.GetItem());
}
}
() TestClass - DisplayMock , SRP TestClass. , .
. . Agile Principles, Patterns, #. :

, , SRP ( ), . , , ( ) .