add test for icon preview
reorginize structure