Example #1
0
def qtype(aws_creds):
    # build
    name = name_with_hostname_prefix()
    service = MTurkService(**aws_creds)
    qtype = service.create_qualification_type(
        name=name,
        description=TEST_QUALIFICATION_DESCRIPTION,
        status='Active',
    )

    yield qtype

    # clean up
    service.dispose_qualification_type(qtype['id'])
Example #2
0
def with_cleanup(aws_creds, request):

    # tear-down: clean up all specially-marked HITs:
    def test_hits_only(hit):
        return hit['description'] == TEST_HIT_DESCRIPTION + str(os.getpid())

    service = MTurkService(**aws_creds)
    request.instance._qtypes_to_purge = []
    try:
        yield service
    except Exception as e:
        raise e
    finally:
        try:
            for hit in service.get_hits(test_hits_only):
                service.disable_hit(hit['id'])

            # remove QualificationTypes we may have added:
            for qtype_id in request.instance._qtypes_to_purge:
                service.dispose_qualification_type(qtype_id)
        except Exception:
            # Broad exception so we don't leak credentials in Travis CI logs
            pass