test with interface