test cases
complete plugin system; #1