<s> '''<STR_LIT>''' <EOL> from __future__ import absolute_import <EOL> from salttesting import skipIf , TestCase <EOL> from salttesting . mock import ( <EOL> NO_MOCK , <EOL> NO_MOCK_REASON , <EOL> MagicMock , <EOL> patch <EOL> ) <EOL> from salttesting . helpers import ensure_in_syspath <EOL> ensure_in_syspath ( '<STR_LIT>' ) <EOL> from salt . states import rbenv <EOL> rbenv . __opts__ = { } <EOL> rbenv . __salt__ = { } <EOL> @ skipIf ( NO_MOCK , NO_MOCK_REASON ) <EOL> class RbenvTestCase ( TestCase ) : <EOL> '''<STR_LIT>''' <EOL> def test_installed ( self ) : <EOL> '''<STR_LIT>''' <EOL> name = '<STR_LIT>' <EOL> ret = { '<STR_LIT:name>' : name , <EOL> '<STR_LIT>' : { } , <EOL> '<STR_LIT:result>' : True , <EOL> '<STR_LIT>' : '<STR_LIT>' } <EOL> mock_t = MagicMock ( side_effect = [ False , True , True ] ) <EOL> mock_f = MagicMock ( return_value = False ) <EOL> mock_def = MagicMock ( return_value = '<STR_LIT>' ) <EOL> mock_ver = MagicMock ( return_value = [ '<STR_LIT>' ] ) <EOL> with patch . dict ( rbenv . __salt__ , <EOL> { '<STR_LIT>' : mock_f , <EOL> '<STR_LIT>' : mock_t , <EOL> '<STR_LIT>' : mock_def , <EOL> '<STR_LIT>' : mock_ver , <EOL> '<STR_LIT>' : mock_t } ) : <EOL> with patch . dict ( rbenv . __opts__ , { '<STR_LIT:test>' : True } ) : <EOL> comt = ( '<STR_LIT>' ) <EOL> ret . update ( { '<STR_LIT>' : comt , '<STR_LIT:result>' : None } ) <EOL> self . assertDictEqual ( rbenv . installed ( name ) , ret ) <EOL> with patch . dict ( rbenv . __opts__ , { '<STR_LIT:test>' : False } ) : <EOL> comt = ( '<STR_LIT>' ) <EOL> ret . update ( { '<STR_LIT>' : comt , '<STR_LIT:result>' : False } ) <EOL> self . assertDictEqual ( rbenv . installed ( name ) , ret ) <EOL> comt = ( '<STR_LIT>' ) <EOL> ret . update ( { '<STR_LIT>' : comt , '<STR_LIT:result>' : True , '<STR_LIT:default>' : False , <EOL> '<STR_LIT>' : { name : '<STR_LIT>' } } ) <EOL> self . assertDictEqual ( rbenv . installed ( name ) , ret ) <EOL> def test_absent ( self ) : <EOL> '''<STR_LIT>''' <EOL> name = '<STR_LIT>' <EOL> ret = { '<STR_LIT:name>' : name , <EOL> '<STR_LIT>' : { } , <EOL> '<STR_LIT:result>' : True , <EOL> '<STR_LIT>' : '<STR_LIT>' } <EOL> mock = MagicMock ( side_effect = [ False , True ] ) <EOL> mock_def = MagicMock ( return_value = '<STR_LIT>' ) <EOL> mock_ver = MagicMock ( return_value = [ '<STR_LIT>' ] ) <EOL> with patch . dict ( rbenv . __salt__ , <EOL> { '<STR_LIT>' : mock , <EOL> '<STR_LIT>' : mock_def , <EOL> '<STR_LIT>' : mock_ver } ) : <EOL> with patch . dict ( rbenv . __opts__ , { '<STR_LIT:test>' : True } ) : <EOL> comt = ( '<STR_LIT>' ) <EOL> ret . update ( { '<STR_LIT>' : comt , '<STR_LIT:result>' : None } ) <EOL> self . assertDictEqual ( rbenv . absent ( name ) , ret ) <EOL> with patch . dict ( rbenv . __opts__ , { '<STR_LIT:test>' : False } ) : <EOL> comt = ( '<STR_LIT>' ) <EOL> ret . update ( { '<STR_LIT>' : comt , '<STR_LIT:result>' : True } ) <EOL> self . assertDictEqual ( rbenv . absent ( name ) , ret ) <EOL> comt = ( '<STR_LIT>' ) <EOL> ret . update ( { '<STR_LIT>' : comt , '<STR_LIT:result>' : True } ) <EOL> self . assertDictEqual ( rbenv . absent ( name ) , ret ) <EOL> def test_install_rbenv ( self ) : <EOL> '''<STR_LIT>''' <EOL> name = '<STR_LIT>' <EOL> ret = { '<STR_LIT:name>' : name , <EOL> '<STR_LIT>' : { } , <EOL> '<STR_LIT:result>' : True , <EOL> '<STR_LIT>' : '<STR_LIT>' } <EOL> with patch . dict ( rbenv . __opts__ , { '<STR_LIT:test>' : True } ) : <EOL> comt = ( '<STR_LIT>' ) <EOL> ret . update ( { '<STR_LIT>' : comt , '<STR_LIT:result>' : None } ) <EOL> self . assertDictEqual ( rbenv . install_rbenv ( name ) , ret ) <EOL> with patch . dict ( rbenv . __opts__ , { '<STR_LIT:test>' : False } ) : <EOL> mock = MagicMock ( side_effect = [ False , True ] ) <EOL> with patch . dict ( rbenv . __salt__ , <EOL> { '<STR_LIT>' : mock , <EOL> '<STR_LIT>' : mock } ) : <EOL> comt = ( '<STR_LIT>' ) <EOL> ret . update ( { '<STR_LIT>' : comt , '<STR_LIT:result>' : True } ) <EOL> self . assertDictEqual ( rbenv . install_rbenv ( name ) , ret ) <EOL> if __name__ == '<STR_LIT:__main__>' : <EOL> from integration import run_tests <EOL> run_tests ( RbenvTestCase , needs_daemon = False ) </s>
