示例#1
0
def step_impl(context):
    payload = {
        "id":
        "rbccps.org/aa9d66a000d94a78895de8d4c0b3a67f3450e531/rs.varanasi.iudx.org.in/varanasi-swm-workers/varanasi-swm-wardwiseAttendance.public",
        "time": {
            "start": generate_random_chars(),
            "end": generate_random_chars()
        }
    }

    check_search("", payload, context)
示例#2
0
def step_impl(context):
    payload = {
        "id":
        "rbccps.org/aa9d66a000d94a78895de8d4c0b3a67f3450e531/rs.varanasi.iudx.org.in/varanasi-swm-vehicles/varanasi-swm-vehicles-live.public",
        "geo_distance": {
            "coordinates": [generate_random_chars(),
                            generate_random_chars()],
            "distance": "10000m"
        }
    }

    check_search("", payload, context)
示例#3
0
def step_impl(context):
    payload = {
        "id":
        "rbccps.org/aa9d66a000d94a78895de8d4c0b3a67f3450e531/rs.varanasi.iudx.org.in/varanasi-swm-vehicles/varanasi-swm-vehicles-live.public",
        "attribute": {
            "term": generate_random_chars(),
            "min": generate_random_chars(),
            "max": generate_random_chars()
        }
    }

    check_search("", payload, context)
示例#4
0
def step_impl(context):
    params = (
        ('id', generate_random_chars()),
        ('token', tokens["master"]),
    )

    check_download(params, context)
示例#5
0
def step_impl(context):
    params = ({
        "id": res[0],
        "token": generate_random_chars()

    })

    check_latest(params,context)
def step_impl(context):
    params = (
        ('id', res[0]),
        ('token', generate_random_chars()),
    )

    data = '{"data": {"hello": "world"}}'

    check_publish(params, data, context)
示例#7
0
def step_impl(context):
    params = ({
        "id":
            generate_random_chars(),
        "token": tokens["master"]
    }
    )

    check_latest(params,context)
def step_impl(context):
    params = (
        ('id', generate_random_chars() + ".public"),
        ('token', tokens["master"]),
    )

    data = '{"data": {"hello": "world"}}'

    check_publish(params, data, context)
示例#9
0
def step_impl(context):
    payload = {
        "id": generate_random_chars() + ".public",
        "time": {
            "start": "2020-03-01",
            "end": "2020-03-27"
        }
    }

    check_search("", payload, context)
示例#10
0
def step_impl(context):
    payload = {
        "id": generate_random_chars() + ".public",
        "geo_distance": {
            "coordinates": [82.9739, 25.3176],
            "distance": "10000m"
        }
    }

    check_search("", payload, context)
示例#11
0
def step_impl(context):
    payload = {
        "id": generate_random_chars() + ".public",
        "attribute": {
            "term": "speed",
            "min": 30,
            "max": 50
        }
    }

    check_search("", payload, context)
示例#12
0
def step_impl(context):
    params = (
        ('id', res[3]),
        ('token', generate_random_chars()),
    )

    files = {
        'file': ('sample.txt', open('sample.txt', 'rb')),
        'metadata': ('meta.json', open('meta.json', 'rb')),
    }
    check_pub_file(params, files, context)
示例#13
0
def step_impl(context):
    data = (
        ("id", res[0]),
        ('token', generate_random_chars()),
    )
    files = {
        'file': ('sample.txt', open('sample.txt', 'rb')),
        'metadata': ('meta.json', open('meta.json', 'rb')),
    }

    check_openfiles_pub(data, files, context)
示例#14
0
def step_impl(context):
    data = (
        ("id", id_prefix + generate_random_chars() + ".public"),
        ('token', tokens["master"]),
    )
    files = {
        'file': ('sample.txt', open('sample.txt', 'rb')),
        'metadata': ('meta.json', open('meta.json', 'rb')),
    }

    check_openfiles_pub(data, files, context)
示例#15
0
def step_impl(context):
    payload = {generate_random_chars(): generate_random_chars()}

    check_search("", payload, context)
示例#16
0
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

CONSUMER_CERT_PATH = 'consumer.pem'
CONSUMER_KEY_PATH = 'consumer.key.pem'
PROVIDER_CERT_PATH = 'provider.pem'
PROVIDER_KEY_PATH = 'provider.key.pem'

headers = {
    'content-type': 'application/json',
    'Host': 'auth.local',
}

resource_ids = []

for i in range(0, 8):
    resource_ids.append(generate_random_chars(special_chars=False))
#    print(resource_ids[i])

acl_set_policy = ""
acl_set_policy += "[email protected] can access example.com/test-category/" + resource_ids[
    0] + ".public for 1 month"
for i in range(1, 6):
    acl_set_policy += "; [email protected] can access example.com/test-category/" + resource_ids[
        i] + " for 1 month"
for i in range(6, 8):
    acl_set_policy += "; [email protected] can access example.com/test-category/" + resource_ids[
        i] + " for 1 month if scope = read"

data = {"policy": acl_set_policy}
response = requests.post('https://localhost:8443/auth/v1/acl/set',
                         headers=headers,
def test_token(token):
    logging.info("In token-related tests")
    incorrect_token = utils.generate_random_chars()

    # ***************when publisher has valid token*************

    logging.info("When video is published with a valid token")

    for app in [conf.RTMP, conf.RTMP_HLS]:
        push_retry = 0
        success = False
        while push_retry < 5 and not success:

            logging.info("Stream attempt %d", push_retry + 1)

            push_retry += 1

            multitask = utils.Multitask()
            publisher = utils.Ffmpeg()
            publisher.input(conf.VIDEOS["countdown"])
            publisher.output(
                utils.get_rtmp_path(app, conf.RESOURCE_ID["test-resource-1"],
                                    token), '-f', 'flv')

            logging.info("When subscribed with a valid token")
            subscriber = utils.Ffmpeg()
            subscriber.output(
                utils.get_rtmp_path(app, conf.RESOURCE_ID["test-resource-1"],
                                    token))

            logging.info("When subscribed with an invalid token")
            subscriber2 = utils.Ffmpeg()
            subscriber2.output(
                utils.get_rtmp_path(app, conf.RESOURCE_ID["test-resource-1"],
                                    incorrect_token))

            multitask.return_dict[conf.PLAY_VALID] = None
            multitask.return_dict[conf.PLAY_INVALID] = None
            multitask.return_dict[conf.PUSH_VALID] = None

            multitask.add(subscriber.play, conf.PUSH_VALID, conf.PLAY_VALID)
            multitask.add(publisher.push, conf.PUSH_VALID)
            multitask.add(subscriber2.play, conf.PUSH_VALID, conf.PLAY_INVALID)

            multitask.run()

            logging.debug(multitask.return_dict[conf.PLAY_VALID],
                          multitask.return_dict[conf.PUSH_VALID],
                          multitask.return_dict[conf.PLAY_INVALID])
            if (multitask.return_dict[conf.PUSH_VALID]
                    and multitask.return_dict[conf.PLAY_VALID]
                    and not multitask.return_dict[conf.PLAY_INVALID]):
                success = True
        logging.info("%s publish with valid token has passed!", app)
        assert success

    # ***************when publisher has incorrect token*************

    logging.info("When video is published with an invalid token")

    for app in [conf.RTMP, conf.RTMP_HLS]:
        push_retry = 0
        success = False
        while push_retry < 5 and not success:

            logging.info("Stream attempt %d", push_retry + 1)

            push_retry += 1
            multitask = utils.Multitask()
            publisher = utils.Ffmpeg()
            publisher.input(conf.VIDEOS["countdown"])
            publisher.output(
                utils.get_rtmp_path(app, conf.RESOURCE_ID["test-resource-1"],
                                    incorrect_token), '-f', 'flv')

            logging.info("When subscribed with a valid token")
            subscriber = utils.Ffmpeg()
            subscriber.output(
                utils.get_rtmp_path(app, conf.RESOURCE_ID["test-resource-1"],
                                    token))

            logging.info("When subscribed with an invalid token")
            subscriber2 = utils.Ffmpeg()
            subscriber2.output(
                utils.get_rtmp_path(app, conf.RESOURCE_ID["test-resource-1"],
                                    incorrect_token))

            multitask.return_dict[conf.PLAY_VALID] = None
            multitask.return_dict[conf.PLAY_INVALID] = None
            multitask.return_dict[conf.PUSH_VALID] = None

            multitask.add(subscriber.play, conf.PUSH_VALID, conf.PLAY_VALID)
            multitask.add(publisher.push, conf.PUSH_VALID)
            multitask.add(subscriber2.play, conf.PUSH_VALID, conf.PLAY_INVALID)

            multitask.run()

            logging.debug(multitask.return_dict[conf.PLAY_VALID],
                          multitask.return_dict[conf.PUSH_VALID],
                          multitask.return_dict[conf.PLAY_INVALID])

            if (not multitask.return_dict[conf.PUSH_VALID]
                    and not multitask.return_dict[conf.PLAY_VALID]
                    and not multitask.return_dict[conf.PLAY_INVALID]):
                success = True
        assert success
        logging.info("%s publish with an invalid token has passed!", app)

    logging.info("All access token related tests have passed!")
示例#18
0
def step_impl(context):
    params = (('token', generate_random_chars()), )
    data = {"id": res[3], "time": {"start": "2021-01-01", "end": "2021-11-01"}}
    time.sleep(1)

    check_search(params, data, context)