Beispiel #1
0
def test_parse_regex():
  # ### check that EMPTY list return empty lists:
  ret = parse_regex([])
  assert_equal(ret, [])
  # + and so do only empty lines:
  assert_equal(parse_regex(['', '']), [])
  # ### check ERROR cases:
  # + line won't match (check)
  cases_wrong_lines = (
    # lines, expected result if *check* is *None*
    (['asd'], [None]),
    (['', 'xxxx'], [None]),  # empty lines get filterted
    (['123-45/12', '123 - 23 - 1234'], [None, None]),
  )
  for lines, exp_if_nocheck in cases_wrong_lines:
    with assert_raises(BpdiagError):
      parse_regex(lines, check=True)
    with assert_raises(BpdiagError):
      parse_regex(lines, check=False)
    res = parse_regex(lines, check=None)
    assert_equal(res, exp_if_nocheck)
  # + missing SYS, ARG and / or PULSE
  cases_missing_kwarg = (
    (ur'^30', ['3070']),
  )
Beispiel #2
0
   (['123-45/12', '123 - 23 - 1234'], [None, None]),
 )
 for lines, exp_if_nocheck in cases_wrong_lines:
   with assert_raises(BpdiagError):
     parse_regex(lines, check=True)
   with assert_raises(BpdiagError):
     parse_regex(lines, check=False)
   res = parse_regex(lines, check=None)
   assert_equal(res, exp_if_nocheck)
 # + missing SYS, ARG and / or PULSE
 cases_missing_kwarg = (
   (ur'^30', ['3070']),
 )
 for regex, lines in cases_missing_kwarg:
   with assert_raises(BpdiagError):
     parse_regex(lines, regex)
 # ### check correct parsing
 cases = (
   (
     ['123/78/65'],
     [{'sys': 123, 'dia': 78, 'pulse': 65}, ]
   ),
   (
     ['123-78-65', '125 /79 / 68'],
     [
       {'sys': 123, 'dia': 78, 'pulse': 65},
       {'sys': 125, 'dia': 79, 'pulse': 68},
     ]
   ),
   (
     ['123/78/65', '', '125 / 79 / 68'],