Exemple #1
0
def exercise_columns_73_76_evaluator(pdb_file_names):
    if (pdb_file_names is None):
        print("Skipping exercise_columns_73_76_evaluator():" \
              " input files not available")
        return
    known_blank = """\
occ_3_bad2.pdb
enk_gm.pdb
t.pdb
phe_a.pdb
f_obs_complex.pdb
phe_h_bad.pdb
one_conf_but_altloc.pdb
""".splitlines()
    known_exactly_one = """\
pdb103l.ent
pdb1etn.ent
pdb118d.ent
pdb161d.ent
pdb139l.ent
pdb1anp.ent
pdb1gky.ent
""".splitlines()
    n_known = [0, 0]
    for file_name in pdb_file_names:
        with open(file_name) as f:
            raw_lines = f.read()
        lines = flex.split_lines(raw_lines)
        e = pdb.columns_73_76_evaluator(lines=lines)
        bn = os.path.basename(file_name)
        if (bn in known_blank):
            assert e.finding == "Blank columns 73-76 on ATOM and HETATM records."
            assert not e.is_old_style
            n_known[0] += 1
        elif (bn in known_exactly_one):
            assert e.finding == "Exactly one common label in columns 73-76."
            assert e.is_old_style
            n_known[1] += 1
    assert n_known[0] >= 3
    assert n_known[1] >= 3
    #
    lines = flex.split_lines("""\
HEADER    HYDROLASE(METALLOPROTEINASE)            17-NOV-93   1THL
ATOM      1  N   ILE     1       9.581  51.813  -0.720  1.00 31.90      1THL 158
ATOM      2  CA  ILE     1       8.335  52.235  -0.041  1.00 52.95      1THL 159
ATOM      3  C   ILE     1       7.959  53.741   0.036  1.00 26.88      1THL 160
END
""")
    e = pdb.columns_73_76_evaluator(lines=lines)
    assert e.finding == "Exactly one common label in columns 73-76."
    assert e.is_old_style
def exercise_columns_73_76_evaluator(pdb_file_names):
  if (pdb_file_names is None):
    print "Skipping exercise_columns_73_76_evaluator():" \
          " input files not available"
    return
  known_blank = """\
occ_3_bad2.pdb
enk_gm.pdb
t.pdb
phe_a.pdb
f_obs_complex.pdb
phe_h_bad.pdb
one_conf_but_altloc.pdb
""".splitlines()
  known_exactly_one = """\
pdb103l.ent
pdb1etn.ent
pdb118d.ent
pdb161d.ent
pdb139l.ent
pdb1anp.ent
pdb1gky.ent
""".splitlines()
  n_known = [0, 0]
  for file_name in pdb_file_names:
    lines = flex.split_lines(open(file_name).read())
    e = pdb.columns_73_76_evaluator(lines=lines)
    bn = os.path.basename(file_name)
    if (bn in known_blank):
      assert e.finding == "Blank columns 73-76 on ATOM and HETATM records."
      assert not e.is_old_style
      n_known[0] += 1
    elif (bn in known_exactly_one):
      assert e.finding == "Exactly one common label in columns 73-76."
      assert e.is_old_style
      n_known[1] += 1
  assert n_known[0] >= 3
  assert n_known[1] >= 3
  #
  lines = flex.split_lines("""\
HEADER    HYDROLASE(METALLOPROTEINASE)            17-NOV-93   1THL
ATOM      1  N   ILE     1       9.581  51.813  -0.720  1.00 31.90      1THL 158
ATOM      2  CA  ILE     1       8.335  52.235  -0.041  1.00 52.95      1THL 159
ATOM      3  C   ILE     1       7.959  53.741   0.036  1.00 26.88      1THL 160
END
""")
  e = pdb.columns_73_76_evaluator(lines=lines)
  assert e.finding == "Exactly one common label in columns 73-76."
  assert e.is_old_style