2016-09-20 6 views
1

ConfigObj使用するには、私はいくつかのsection作成コードをテストしたいです。型の引数としてTypeErrorの「モック」は反復可能ではないので、例えば、モッキングConfigObjインスタンス

def test_create_section_created(): 
    config = Mock(spec=ConfigObj) # ← This is not right… 
    create_section(config, 'ook') 
    assert 'ook' in config 
    config.reload.assert_called_once_with() 

明らかに、試験方法は失敗します。

configオブジェクトをモックとして定義するにはどうすればよいですか?

答えて

0

そして、なぜあなたはいけこれは、あなたが広く、ポストの前に、目を覚まし、これまでです:他の誰かが脳障害が発生した場合には、私は後世のためにここにその答え/質問を離れなければなら

def test_create_section_created(): 
    logger.info = Mock() 
    config = MagicMock(spec=ConfigObj) # ← This IS right… 
    config.__contains__.return_value = False # Negates the next assert. 
    create_section(config, 'ook') 
    # assert 'ook' in config ← This is now a pointless assert! 
    config.reload.assert_called_once_with() 
    logger.info.assert_called_once_with("Created new section ook.") 

...

関連する問題