mediator pattern.
command pattern test.
add command pattern.