Uncle Bob's Agile Development Corner
Observer—Evolving into a pattern, Part 1
by Robert C. Martin
Listing 11.

import junit.framework.*;

public class ClockDriverTest extends TestCase
    public ClockDriverTest(String name)

    public void testTimeChange()
        MockTimeSource source = new MockTimeSource();
        MockTimeSink sink = new MockTimeSink();

        assertEquals(3, sink.getHours());
        assertEquals(4, sink.getMinutes());
        assertEquals(5, sink.getSeconds());

        assertEquals(7, sink.getHours());
        assertEquals(8, sink.getMinutes());
        assertEquals(9, sink.getSeconds());

About the Author

Robert C. Martin is president of Object Mentor Inc., a firm that offers high-level, OO software design consulting, training, and development services. He is the author of Designing Object Oriented C++ Applications Using the Booch Method. He can be contacted at [email protected].