Ejemplo n.º 1
0
if iter_keys1 != iter_keys2:
    print("Total PH Iteration Mismatch: %s != %s" %
          (len(iter_keys1), len(iter_keys2)))
    fail_flag = True

valid_iters = set(iter_keys1).intersection(iter_keys2)
valid_iters = sorted([int(v) for v in valid_iters])
valid_iters = [str(k) for k in valid_iters]

no_key = object()
start_diff_key = no_key
for key in valid_iters:
    res1 = history1[key]
    res2 = history2[key]
    try:
        compare_repn(res1, res2, tolerance=_diff_tolerance)
    except:
        print("Differences begin at iteration %s" % (key))
        start_diff_key = key
        fail_flag = True

    if start_diff_key is not no_key:
        break

keys_to_compare = []
if start_diff_key is not no_key:
    start_idx = valid_iters.index(start_diff_key)
    keys_to_compare = valid_iters[start_idx:min(len(valid_iters), start_idx +
                                                5)]
for diff_key in keys_to_compare:
    print("\n")
Ejemplo n.º 2
0
        if v and isinstance(v, collections.MutableMapping):
            items.extend(flatten(v, new_key).items())
        else:
            items.append((new_key, v))
    return dict(items)

st1, r1 = load_solution(sys.argv[1])

st2, r2 = load_solution(sys.argv[2])

if st1 != st2:
    print("Scenario Tree Mismatch")
    fail_flag = True

try:
    compare_repn(r1, r2, tolerance=_diff_tolerance)
except (ValueError, AssertionError):
    print("Differences found in solutions. Message:\n")
    print(sys.exc_info()[1])
    fail_flag = True

if fail_flag:
    print("Inspecting flattened solutions")
    res1 = flatten(r1)
    res2 = flatten(r2)
    all_keys = set(res1.keys()).union(set(res2.keys()))
    res1_missing_keys = all_keys-set(res1.keys())
    res2_missing_keys = all_keys-set(res2.keys())
    if len(res1_missing_keys):
        print("Missing keys from results: %s"
              % (res1_missing_keys))
Ejemplo n.º 3
0
            items.extend(flatten(v, new_key).items())
        else:
            items.append((new_key, v))
    return dict(items)


st1, r1 = load_solution(sys.argv[1])

st2, r2 = load_solution(sys.argv[2])

if st1 != st2:
    print("Scenario Tree Mismatch")
    fail_flag = True

try:
    compare_repn(r1, r2, tolerance=_diff_tolerance)
except (ValueError, AssertionError):
    print("Differences found in solutions. Message:\n")
    print(sys.exc_info()[1])
    fail_flag = True

if fail_flag:
    print("Inspecting flattened solutions")
    res1 = flatten(r1)
    res2 = flatten(r2)
    all_keys = set(res1.keys()).union(set(res2.keys()))
    res1_missing_keys = all_keys - set(res1.keys())
    res2_missing_keys = all_keys - set(res2.keys())
    if len(res1_missing_keys):
        print("Missing keys from results: %s" % (res1_missing_keys))
    if len(res2_missing_keys):
Ejemplo n.º 4
0
if iter_keys1 != iter_keys2:
    print("Total PH Iteration Mismatch: %s != %s"
          % (len(iter_keys1), len(iter_keys2)))
    fail_flag = True

valid_iters = set(iter_keys1).intersection(iter_keys2)
valid_iters = sorted([int(v) for v in valid_iters])
valid_iters = [str(k) for k in valid_iters]

no_key = object()
start_diff_key = no_key
for key in valid_iters:
    res1 = history1[key]
    res2 = history2[key]
    try:
        compare_repn(res1, res2, tolerance=_diff_tolerance)
    except:
        print("Differences begin at iteration %s"
              % (key))
        start_diff_key = key
        fail_flag = True

    if start_diff_key is not no_key:
        break

keys_to_compare = []
if start_diff_key is not no_key:
    start_idx = valid_iters.index(start_diff_key)
    keys_to_compare = valid_iters[start_idx:min(len(valid_iters),start_idx+5)]
for diff_key in keys_to_compare:
    print("\n")