more test case => some bugfix(logical)