3

次のようなモッククラスがあります。

struct MockClass {
    MOCK_METHOD0(beginTransaction, void ());
    MOCK_METHOD0(doSomething, void ());
    MOCK_METHOD0(doSomethingElse, void ());
    MOCK_METHOD0(commit, void ());
};

beginTransaction()を呼び出す前にが呼び出され、最後に呼び出されるかどうかをテストしたいと思います。私はこのようにしました:doSomething()doSomethingElse()commit()

{
    InSequence s;
    EXPECT_CALL(*mockObject, beginTransaction());
    EXPECT_CALL(*mockObject, doSomething());
    EXPECT_CALL(*mockObject, doSomethingElse());
    EXPECT_CALL(*mockObject, commit());
}

これは機能しますが、期待を過剰に指定しています。doSomething()andのシーケンスは気にしません。最初に呼び出され、最後に呼び出されるdoSomethingElse()だけです。これを行う方法はありますか?beginTransaction()commit()

4

1 に答える 1