Skip to content

failed message for list-not-more is missing in module #269

@jnpr-raylam

Description

@jnpr-raylam

Here is my test file:

show_interfaces_terse:
  - rpc: get-interface-information
  - kwargs:
      terse: True
      interface-name: ge-0/0/0
  - iterate:
      xpath: physical-interface/logical-interface
      id: name
      tests:
        - list-not-less: address-family/address-family-name
          info: Checked interface {{id_0}} has no missing family
          err: Test Failed! interface {{id_0}} family {{pre['address-family/address-family-name']}} is missing
        - list-not-more: address-family/address-family-name
          info: Checked interface {{id_0}} has no new family
          err: Test Failed! interface {{id_0}} has new family {{post['address-family/address-family-name']}}

When using the module to perform the checking, for list-not-less test failed case, the message is in the test_results dict of return object:

 {'count': {'fail': 1, 'pass': 1},
 'failed': [{'id': {'name': 'ge-0/0/0.0'},
             'message': "Test Failed! interface ['ge-0/0/0.0'] family mpls is missing",
             'post': {},
             'post_node_value': '',
             'pre': {'address-family/address-family-name': 'mpls'},
             'pre_node_value': 'mpls'}],
 'node_name': 'address-family/address-family-name',
 'passed': [{'id': {'name': 'ge-0/0/0.0'},
             'message': "Checked interface ['ge-0/0/0.0'] has no missing family",
             'post': {},
             'post_node_value': 'inet',
             'pre': {'address-family/address-family-name': 'inet'},
             'pre_node_value': 'inet'}],
 'result': False,
 'test_name': 'show_interfaces_terse',
 'testoperation': 'list-not-less',
 'xpath': 'physical-interface/logical-interface'}

However, for list-not-more scenario, the failed message is missed in the return object:

{'count': {'fail': 1, 'pass': 1},
 'failed': [{'id': {'name': 'ge-0/0/0.0'},
             'post': {'address-family/address-family-name': 'mpls'},
             'post_node_value': 'mpls',
             'pre': {},
             'pre_node_value': ''}],
 'node_name': 'address-family/address-family-name',
 'passed': [{'id': {'name': 'ge-0/0/0.0'},
             'message': "Checked interface ['ge-0/0/0.0'] has no new family",
             'post': {'address-family/address-family-name': 'inet'},
             'post_node_value': 'inet',
             'pre': {},
             'pre_node_value': 'inet'}],
 'result': False,
 'test_name': 'show_interfaces_terse',
 'testoperation': 'list-not-more',
 'xpath': 'physical-interface/logical-interface'}

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions