def test_protein_and_ions_1(self, mocker):

        m_select = mocker.patch('PythonPDBStructures.pdb.prody_utils.select',
                                return_value='NEW_structure')

        obj = prody_utils.ProdySelect('TEST_structure')

        output = obj.protein_and_ions()

        m_select.assert_called_once_with(structure='TEST_structure',
                                         string='protein or ion')

        assert output == 'NEW_structure'
    def test_resnum(self, mocker):

        m_select = mocker.patch('PythonPDBStructures.pdb.prody_utils.select',
                                return_value='NEW_structure')

        obj = prody_utils.ProdySelect('TEST_structure')

        output = obj.resnum(5)

        m_select.assert_called_once_with(structure='TEST_structure',
                                         string='resnum 5')

        assert output == 'NEW_structure'
    def test_protein_and_ions_2(self, mocker):

        m_select = mocker.patch('PythonPDBStructures.pdb.prody_utils.select',
                                side_effect=Exception)

        m_only_protein = mocker.patch.object(prody_utils.ProdySelect,
                                             'only_protein',
                                             return_value='NEW_structure')

        obj = prody_utils.ProdySelect('TEST_structure')

        output = obj.protein_and_ions()

        m_select.assert_called_once_with(structure='TEST_structure',
                                         string='protein or ion')

        m_only_protein.assert_called_once()

        assert output == 'NEW_structure'
    def test_init(self):

        obj = prody_utils.ProdySelect('TEST_structure')

        assert obj._structure == 'TEST_structure'