add some test and ensure it works