Ejemplo n.º 1
0
def test_update_enterprise_catalog():
    expected_response = {
        'catalog_uuid': TEST_ENTERPRISE_CATALOG_UUID,
        'enterprise_customer': TEST_ENTERPRISE_ID,
        'title': 'Test Catalog',
        'content_filter': {
            "content_type": "course"
        },
        'enabled_course_modes': ["verified"],
        'publish_audit_enrollment_urls': False,
    }
    responses.add(
        responses.PUT,
        _url("enterprise-catalogs/{catalog_uuid}/".format(
            catalog_uuid=TEST_ENTERPRISE_CATALOG_UUID)),
        json=expected_response,
    )
    client = enterprise_catalog.EnterpriseCatalogApiClient(
        'staff-user-goes-here')
    actual_response = client.update_enterprise_catalog(
        TEST_ENTERPRISE_CATALOG_UUID,
        content_filter={"content_type": "course"})
    assert actual_response == expected_response
    request = responses.calls[0][0]
    assert json.loads(request.body) == {
        'content_filter': {
            "content_type": "course"
        }
    }
Ejemplo n.º 2
0
def test_create_enterprise_catalog():
    expected_response = {
        'catalog_uuid': TEST_ENTERPRISE_CATALOG_UUID,
        'enterprise_customer': TEST_ENTERPRISE_ID,
        'title': 'Test Catalog',
        'content_filter': {
            "content_type": "course"
        },
        'enabled_course_modes': ["verified"],
        'publish_audit_enrollment_urls': False,
    }
    expected_request = {
        'uuid': TEST_ENTERPRISE_CATALOG_UUID,
        'enterprise_customer': TEST_ENTERPRISE_ID,
        'title': 'Test Catalog',
        'content_filter': {
            "content_type": "course"
        },
        'enabled_course_modes': ["verified"],
        'publish_audit_enrollment_urls': 'false',
    }
    responses.add(responses.POST,
                  _url("enterprise-catalogs/"),
                  json=expected_response)
    client = enterprise_catalog.EnterpriseCatalogApiClient(
        'staff-user-goes-here')
    actual_response = client.create_enterprise_catalog(
        expected_response['catalog_uuid'],
        expected_response['enterprise_customer'], expected_response['title'],
        expected_response['content_filter'],
        expected_response['enabled_course_modes'],
        expected_response['publish_audit_enrollment_urls'])
    assert actual_response == expected_response
    request = responses.calls[0][0]
    assert json.loads(request.body) == expected_request
def test_delete_enterprise_catalog():
    responses.add(
        responses.DELETE,
        _url("enterprise-catalogs/{catalog_uuid}/".format(catalog_uuid=TEST_ENTERPRISE_CATALOG_UUID)),
    )
    client = enterprise_catalog.EnterpriseCatalogApiClient('staff-user-goes-here')
    actual_response = client.delete_enterprise_catalog(TEST_ENTERPRISE_CATALOG_UUID)
    assert actual_response
def test_failing_refresh_catalog():
    catalog = EnterpriseCustomerCatalogFactory()
    responses.add(
        responses.POST,
        _url("enterprise-catalogs/{catalog_uuid}/refresh_metadata/".format(
            catalog_uuid=catalog.uuid)),
        body=ConnectionError(),
    )
    client = enterprise_catalog.EnterpriseCatalogApiClient(
        'staff-user-goes-here')
    refreshed_catalogs, failed_to_refresh_catalogs = client.refresh_catalogs(
        EnterpriseCustomerCatalog.objects.all())
    assert failed_to_refresh_catalogs[0] == catalog.uuid
    assert len(refreshed_catalogs.items()) == 0
def test_enterprise_contains_content_items():
    url = _url("enterprise-customer/{enterprise_uuid}/contains_content_items/?course_run_ids=demoX".format(
        enterprise_uuid=TEST_ENTERPRISE_ID
    ))
    expected_response = {
        'contains_content_items': True,
    }
    responses.add(
        responses.GET,
        url,
        json=expected_response,
    )
    client = enterprise_catalog.EnterpriseCatalogApiClient('staff-user-goes-here')
    actual_response = client.enterprise_contains_content_items(TEST_ENTERPRISE_ID, ['demoX'])
    assert actual_response == expected_response['contains_content_items']
def test_successful_refresh_catalog():
    catalog = EnterpriseCustomerCatalogFactory()
    task_id = '17812314511'
    responses.add(
        responses.POST,
        _url("enterprise-catalogs/{catalog_uuid}/refresh_metadata/".format(
            catalog_uuid=catalog.uuid)),
        json={'async_task_id': task_id},
    )
    client = enterprise_catalog.EnterpriseCatalogApiClient(
        'staff-user-goes-here')
    refreshed_catalogs, failed_to_refresh_catalogs = client.refresh_catalogs(
        EnterpriseCustomerCatalog.objects.all())
    assert refreshed_catalogs.get(catalog.uuid) == task_id
    assert len(failed_to_refresh_catalogs) == 0
def test_get_enterprise_catalog():
    expected_response = {
        'catalog_uuid': TEST_ENTERPRISE_CATALOG_UUID,
        'enterprise_customer': TEST_ENTERPRISE_ID,
        'enterprise_customer_name': TEST_ENTERPRISE_NAME,
        'title': 'Test Catalog',
        'content_filter': {"content_type": "course"},
        'enabled_course_modes': ["verified"],
        'publish_audit_enrollment_urls': False,
    }
    responses.add(
        responses.GET,
        _url("enterprise-catalogs/{catalog_uuid}/".format(catalog_uuid=TEST_ENTERPRISE_CATALOG_UUID)),
        json=expected_response,
    )
    client = enterprise_catalog.EnterpriseCatalogApiClient('staff-user-goes-here')
    actual_response = client.get_enterprise_catalog(TEST_ENTERPRISE_CATALOG_UUID)
    assert actual_response == expected_response
def test_partial_successful_refresh_catalog():
    catalog1 = EnterpriseCustomerCatalogFactory()
    catalog2 = EnterpriseCustomerCatalogFactory()
    task_id = '17812314511'
    responses.add(
        responses.POST,
        _url("enterprise-catalogs/{catalog_uuid}/refresh_metadata/".format(
            catalog_uuid=catalog1.uuid)),
        json={'async_task_id': task_id},
    )
    responses.add(
        responses.POST,
        _url("enterprise-catalogs/{catalog_uuid}/refresh_metadata/".format(
            catalog_uuid=catalog2.uuid)),
        body=ConnectionError(),
    )
    client = enterprise_catalog.EnterpriseCatalogApiClient(
        'staff-user-goes-here')
    refreshed_catalogs, failed_to_refresh_catalogs = client.refresh_catalogs(
        EnterpriseCustomerCatalog.objects.all())
    assert failed_to_refresh_catalogs[0] == catalog2.uuid
    assert len(refreshed_catalogs.items()) == 1
    assert refreshed_catalogs.get(catalog1.uuid) == task_id