def test_pillow_deletion(self): user_id, group = self.test_pillow() group.soft_delete() # send to kafka since = get_topic_offset(topics.GROUP) producer.send_change(topics.GROUP, _group_to_change_meta(group.to_json())) pillow = get_group_pillow() pillow.process_changes(since=since, forever=False) # confirm removed in elasticsearch self.es_client.indices.refresh(USER_INDEX) _assert_es_user_and_groups(self, self.es_client, user_id, [], [])
def test_pillow(self): user_id = uuid.uuid4().hex domain = 'dbtest-group-user' _create_es_user(self.es_client, user_id, domain) _assert_es_user_and_groups(self, self.es_client, user_id, None, None) # create and save a group group = Group(domain=domain, name='g1', users=[user_id]) group.save() # send to kafka since = get_topic_offset(topics.GROUP) producer.send_change(topics.GROUP, _group_to_change_meta(group.to_json())) # process using pillow pillow = get_group_pillow() pillow.process_changes(since=since, forever=False) # confirm updated in elasticsearch self.es_client.indices.refresh(USER_INDEX) _assert_es_user_and_groups(self, self.es_client, user_id, [group._id], [group.name]) return user_id, group
def test_kafka_group_pillow(self): domain = uuid.uuid4().hex user_id = uuid.uuid4().hex # make a group group = Group(domain=domain, name='g1', users=[user_id]) group.save() # send to kafka since = get_topic_offset(topics.GROUP) change_meta = change_meta_from_doc( document=group.to_json(), data_source_type=data_sources.SOURCE_COUCH, data_source_name=Group.get_db().dbname, ) producer.send_change(topics.GROUP, change_meta) # send to elasticsearch pillow = get_group_pillow() pillow.process_changes(since=since) self.elasticsearch.indices.refresh(GROUP_INDEX_INFO.index) # verify there self._verify_group_in_es(group)
def test_kafka_group_pillow(self): domain = uuid.uuid4().hex user_id = uuid.uuid4().hex # make a group group = Group(domain=domain, name='g1', users=[user_id]) group.save() # send to kafka since = get_topic_offset(topics.GROUP) change_meta = change_meta_from_doc( document=group.to_json(), data_source_type=data_sources.SOURCE_COUCH, data_source_name=Group.get_db().dbname, ) producer.send_change(topics.GROUP, change_meta) # send to elasticsearch pillow = get_group_pillow() pillow.process_changes(since=since, forever=False) self.elasticsearch.indices.refresh(GROUP_INDEX_INFO.index) # verify there self._verify_group_in_es(group)