Command Pattern

lack of test