add #delete tests
implement #delete