############################################################################## # Copyright (c) 2017 ZTE Corp and others. # # All rights reserved. This program and the accompanying materials # are made available under the terms of the Apache License, Version 2.0 # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## import pytest from deploy.common.query import ( find ) @pytest.mark.parametrize('sequence, expected', [ ([{'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1', 'ip_ranges': [{'start': '10.20.11.3', 'end': '10.20.11.10'}], 'name': 'MANAGEMENT'}, {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1', 'ip_ranges': [{'start': '10.20.11.3', 'end': '10.20.11.10'}], 'name': 'STORAGE'}], {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1', 'ip_ranges': [{'start': '10.20.11.3', 'end': '10.20.11.10'}], 'name': 'STORAGE'}), ([{'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1', 'ip_ranges': [{'start': '10.20.11.3', 'end': '10.20.11.10'}], 'name': 'MANAGEMENT'}, {'cidr': '10.20.11.0/24', 'gateway': '10.20.11.1', 'ip_ranges': [{'start': '10.20.11.3', 'end': '10.20.11.10'}], 'name': 'PUBLICAPI'}], None)]) def test_find(sequence, expected): def sample_func(item): return item['name'] == 'STORAGE' assert find(sample_func, sequence) == expected