add spec for cloneBeforeAdd, add reset()