示例#1
0
def test_pods_conditions(provider, appliance, soft_assert):

    """
    Polarion:
        assignee: juwatts
        caseimportance: medium
        initialEstimate: 1/6h
    """
    selected_pods_cfme = appliance.collections.container_pods.all()

    pods_per_ready_status = provider.pods_per_ready_status()
    for pod in selected_pods_cfme:
        if not pod.exists:
            continue
        view = navigate_to(pod, 'Details')
        ose_pod_condition = pods_per_ready_status[pod.name]
        cfme_pod_condition = {r.name.text: eval_strings([r.status.text]).pop()
                              for r in view.entities.conditions.rows()}

        for status in cfme_pod_condition:
            # If any pods are in a False state, the condition will be reported as False
            soft_assert(all(cond for cond in ose_pod_condition) == cfme_pod_condition['Ready'],
                        'The Pod {} status mismatch: It is "{}" in openshift while cfme sees "{}".'
                        .format(status, pod.name, ose_pod_condition,
                                cfme_pod_condition['Ready']))
示例#2
0
def test_pods_conditions(provider, appliance, soft_assert):
    """
    Polarion:
        assignee: juwatts
        caseimportance: medium
        casecomponent: Containers
        initialEstimate: 1/6h
    """
    selected_pods_cfme = appliance.collections.container_pods.all()

    pods_per_ready_status = provider.pods_per_ready_status()
    for pod in selected_pods_cfme:
        if not pod.exists:
            continue
        view = navigate_to(pod, 'Details')
        ose_pod_condition = pods_per_ready_status[pod.name]
        cfme_pod_condition = {
            r.name.text: eval_strings([r.status.text]).pop()
            for r in view.entities.conditions.rows()
        }

        for status in cfme_pod_condition:
            # If any pods are in a False state, the condition will be reported as False
            soft_assert(
                all(cond for cond in ose_pod_condition) ==
                cfme_pod_condition['Ready'],
                'The Pod {} status mismatch: It is "{}" in openshift while cfme sees "{}".'
                .format(status, pod.name, ose_pod_condition,
                        cfme_pod_condition['Ready']))
示例#3
0
def test_report_pods_per_ready_status(appliance, soft_assert, provider):
    """Testing 'Pods per Ready Status' report, see polarion case for more info

    Polarion:
        assignee: juwatts
        caseimportance: high
        casecomponent: Containers
        initialEstimate: 1/6h
    """
    pods_per_ready_status = provider.pods_per_ready_status()
    report = get_report(appliance, 'Pods per Ready Status')
    for row in report.data.rows:
        name = row['# Pods per Ready Status']
        readiness_ui = bool(
            eval_strings([row['Ready Condition Status']]).pop())
        if soft_assert(
                name
                in pods_per_ready_status,  # this check based on BZ#1435958
                'Could not find pod "{}" in openshift.'.format(name)):
            expected_readiness = bool(
                all(pod for pod in pods_per_ready_status.get(name, False)))
            soft_assert(
                expected_readiness == readiness_ui,
                'For pod "{}" expected readiness is "{}" Found "{}"'.format(
                    name, expected_readiness, readiness_ui))
def test_pods_conditions(provider, appliance, soft_assert):

    selected_pods_cfme = {
        pd.name: pd
        for pd in Pod.get_random_instances(
            provider, count=3, appliance=appliance)
    }

    pods_per_ready_status = provider.pods_per_ready_status()
    for pod_name in selected_pods_cfme:
        cfme_pod = selected_pods_cfme[pod_name]

        ose_pod_condition = pods_per_ready_status[pod_name]
        cfme_pod_condition = {
            _type: eval_strings([
                getattr(getattr(cfme_pod.summary.conditions, _type), "Status")
            ]).pop()
            for _type in ose_pod_condition
        }

        for status in cfme_pod_condition:
            soft_assert(
                ose_pod_condition[status] == cfme_pod_condition[status],
                'The Pod {} status mismatch: It is "{}" in openshift while cfme sees "{}".'
                .format(status, cfme_pod.name, ose_pod_condition[status],
                        cfme_pod_condition[status]))
示例#5
0
 def pods_per_ready_status(self):
     """Grabing the Container Statuses Summary of the pods from API"""
     #  TODO: Add later this logic to wrapanapi
     entities = self.mgmt.api.get('pod')[1]['items']
     out = {}
     for entity_j in entities:
         out[entity_j['metadata']['name']] = {
             condition['type']: eval_strings([condition['status']]).pop()
             for condition in entity_j['status'].get('conditions', [])
         }
     return out
示例#6
0
def test_report_pods_per_ready_status(soft_assert, provider):
    """Testing 'Pods per Ready Status' report, see polarion case for more info"""
    pods_per_ready_status = provider.pods_per_ready_status()
    report = get_report('Pods per Ready Status')
    for row in report.data.rows:
        name = row['# Pods per Ready Status']
        readiness_ui = bool(eval_strings([row['Ready Condition Status']]).pop())
        if soft_assert(name in pods_per_ready_status,  # this check based on BZ#1435958
                'Could not find pod "{}" in openshift.'
                .format(name)):
            expected_readiness = bool(pods_per_ready_status.get(name, {}).get('Ready', False))
            soft_assert(expected_readiness == readiness_ui,
                        'For pod "{}" expected readiness is "{}" Found "{}"'
                        .format(name, expected_readiness, readiness_ui))
示例#7
0
def test_report_pods_per_ready_status(soft_assert, provider):
    """Testing 'Pods per Ready Status' report, see polarion case for more info"""
    pods_per_ready_status = provider.pods_per_ready_status()
    report = get_report('Pods per Ready Status')
    for row in report.data.rows:
        name = row['# Pods per Ready Status']
        readiness_ui = bool(eval_strings([row['Ready Condition Status']]).pop())
        if soft_assert(name in pods_per_ready_status,  # this check based on BZ#1435958
                'Could not find pod "{}" in openshift.'
                .format(name)):
            expected_readiness = bool(pods_per_ready_status.get(name, {}).get('Ready', False))
            soft_assert(expected_readiness == readiness_ui,
                        'For pod "{}" expected readiness is "{}" Found "{}"'
                        .format(name, expected_readiness, readiness_ui))
def test_pods_conditions(provider, appliance, soft_assert):

    selected_pods_cfme = {pd.name: pd
                          for pd in PodCollection(appliance).get_random_instances(count=3)}

    pods_per_ready_status = provider.pods_per_ready_status()
    for pod_name in selected_pods_cfme:
        cfme_pod = selected_pods_cfme[pod_name]
        view = navigate_to(cfme_pod, 'Details')
        ose_pod_condition = pods_per_ready_status[pod_name]
        cfme_pod_condition = {r.name.text: eval_strings([r.status.text]).pop()
                              for r in view.entities.conditions.rows()}

        for status in cfme_pod_condition:
            soft_assert(ose_pod_condition[status] == cfme_pod_condition[status],
                        'The Pod {} status mismatch: It is "{}" in openshift while cfme sees "{}".'
                        .format(status, cfme_pod.name, ose_pod_condition[status],
                                cfme_pod_condition[status]))
示例#9
0
def test_report_pods_per_ready_status(appliance, soft_assert, provider):
    """Testing 'Pods per Ready Status' report, see polarion case for more info

    Polarion:
        assignee: juwatts
        caseimportance: medium
        casecomponent: Containers
        initialEstimate: 1/6h
    """
    pods_per_ready_status = provider.pods_per_ready_status()
    report = get_report(appliance, 'Pods per Ready Status')
    for row in report.data.rows:
        name = row['# Pods per Ready Status']
        readiness_ui = bool(eval_strings([row['Ready Condition Status']]).pop())
        if soft_assert(name in pods_per_ready_status,  # this check based on BZ#1435958
                'Could not find pod "{}" in openshift.'
                .format(name)):
            expected_readiness = bool(all(pod for pod in pods_per_ready_status.get(name, False)))
            soft_assert(expected_readiness == readiness_ui,
                        'For pod "{}" expected readiness is "{}" Found "{}"'
                        .format(name, expected_readiness, readiness_ui))
示例#10
0
def test_pods_conditions(provider, appliance, soft_assert):

    selected_pods_cfme = {
        pd.name: pd
        for pd in PodCollection(appliance).get_random_instances(count=3)
    }

    pods_per_ready_status = provider.pods_per_ready_status()
    for pod_name in selected_pods_cfme:
        cfme_pod = selected_pods_cfme[pod_name]
        view = navigate_to(cfme_pod, 'Details')
        ose_pod_condition = pods_per_ready_status[pod_name]
        cfme_pod_condition = {
            r.name.text: eval_strings([r.status.text]).pop()
            for r in view.entities.conditions.rows()
        }

        for status in cfme_pod_condition:
            soft_assert(
                ose_pod_condition[status] == cfme_pod_condition[status],
                'The Pod {} status mismatch: It is "{}" in openshift while cfme sees "{}".'
                .format(status, cfme_pod.name, ose_pod_condition[status],
                        cfme_pod_condition[status]))