add new test cases for m2m updating