| from check_index import * |
| |
| def check_objects(o): |
| assert is_list(o) |
| assert len(o) == 1 |
| check_index_object(o[0], "cache", 2, 0, check_object_cache) |
| |
| def check_cache_entry(actual, expected): |
| assert is_dict(actual) |
| assert sorted(actual.keys()) == ["name", "properties", "type", "value"] |
| |
| assert is_string(actual["type"], expected["type"]) |
| assert is_string(actual["value"], expected["value"]) |
| |
| def check_property(actual, expected): |
| assert is_dict(actual) |
| assert sorted(actual.keys()) == ["name", "value"] |
| assert is_string(actual["value"], expected["value"]) |
| |
| check_list_match(lambda a, e: is_string(a["name"], e["name"]), actual["properties"], expected["properties"], check=check_property) |
| |
| def check_object_cache(o): |
| assert sorted(o.keys()) == ["entries", "kind", "version"] |
| # The "kind" and "version" members are handled by check_index_object. |
| check_list_match(lambda a, e: is_string(a["name"], e["name"]), o["entries"], [ |
| { |
| "name": "CM_OPTION_BOOL", |
| "type": "BOOL", |
| "value": "OFF", |
| "properties": [ |
| { |
| "name": "HELPSTRING", |
| "value": "Testing option()", |
| }, |
| ], |
| }, |
| { |
| "name": "CM_SET_BOOL", |
| "type": "BOOL", |
| "value": "ON", |
| "properties": [ |
| { |
| "name": "HELPSTRING", |
| "value": "Testing set(CACHE BOOL)", |
| }, |
| { |
| "name": "ADVANCED", |
| "value": "1", |
| }, |
| ], |
| }, |
| { |
| "name": "CM_SET_FILEPATH", |
| "type": "FILEPATH", |
| "value": "dir1/dir2/empty.txt", |
| "properties": [ |
| { |
| "name": "HELPSTRING", |
| "value": "Testing set(CACHE FILEPATH)", |
| }, |
| ], |
| }, |
| { |
| "name": "CM_SET_PATH", |
| "type": "PATH", |
| "value": "dir1/dir2", |
| "properties": [ |
| { |
| "name": "HELPSTRING", |
| "value": "Testing set(CACHE PATH)", |
| }, |
| { |
| "name": "ADVANCED", |
| "value": "ON", |
| }, |
| ], |
| }, |
| { |
| "name": "CM_SET_STRING", |
| "type": "STRING", |
| "value": "test", |
| "properties": [ |
| { |
| "name": "HELPSTRING", |
| "value": "Testing set(CACHE STRING)", |
| }, |
| ], |
| }, |
| { |
| "name": "CM_SET_STRINGS", |
| "type": "STRING", |
| "value": "1", |
| "properties": [ |
| { |
| "name": "HELPSTRING", |
| "value": "Testing set(CACHE STRING) with STRINGS", |
| }, |
| { |
| "name": "STRINGS", |
| "value": "1;2;3;4", |
| }, |
| ], |
| }, |
| { |
| "name": "CM_SET_INTERNAL", |
| "type": "INTERNAL", |
| "value": "int2", |
| "properties": [ |
| { |
| "name": "HELPSTRING", |
| "value": "Testing set(CACHE INTERNAL)", |
| }, |
| ], |
| }, |
| { |
| "name": "CM_SET_TYPE", |
| "type": "STRING", |
| "value": "1", |
| "properties": [ |
| { |
| "name": "HELPSTRING", |
| "value": "Testing set(CACHE INTERNAL) with set_property(TYPE)", |
| }, |
| { |
| "name": "ADVANCED", |
| "value": "0", |
| }, |
| ], |
| }, |
| ], check=check_cache_entry, allow_extra=True) |
| |
| assert is_dict(index) |
| assert sorted(index.keys()) == ["cmake", "objects", "reply"] |
| check_objects(index["objects"]) |