Пример #1
0
    def test_returns_populated_groups(self, get_group):
        conn = Mock()

        # The following tom-foolery with returns and side_effect is to make sure
        # we don't have to bother with setting up get_group correctly, and so
        # we assume it works correctly to mock it here.
        returns = [[sentinel.testuser1, sentinel.testuser2],
                   [sentinel.testuser3, sentinel.testuser4],
                   [sentinel.testuser5, sentinel.testuser6]]
        
        expected = [sentinel.testuser1, sentinel.testuser2,
                    sentinel.testuser3, sentinel.testuser4,
                    sentinel.testuser5, sentinel.testuser6,
                    ]

        def side_effect(*args):
            result = returns.pop(0)
            return result

        config = {'groups': self.test_groups,
                  'dir_guid_source': 'user_guid_source',
                  'dir_username_source': 'user_source',
                  'dir_fname_source': 'fname_source',
                  'dir_lname_source': 'lname_source',}

        groups = [("dn", Mock(),), ("dn", Mock(),), ("dn", Mock(),)]

        get_group.side_effect = side_effect

        self.assertEqual(ldap_reader.collect_groups(conn, config),
                         expected)
Пример #2
0
 def test_returns_empty_groups(self):
     conn = Mock()
     conn.search_s.return_value = []
     config = {'groups': self.test_groups,
               'dir_guid_source': 'user_guid_source',
               'dir_username_source': 'user_source',
               'dir_fname_source': 'fname_source',
               'dir_lname_source': 'lname_source',}
     self.assertEqual(len(ldap_reader.collect_groups((conn, Mock()), config)),
                      0)