Esempio n. 1
0
def test_ref_parsing():
  for input in ['', None, type, 1, 3.0, 'hork bork']:
    with pytest.raises(Ref.InvalidRefError):
      ref(input)

  ref('a').components() == [Ref.Dereference('a')]
  ref('.a').components() == [Ref.Dereference('a')]
  ref('a.b').components() == [Ref.Dereference('a'), Ref.Dereference('b')]
  ref('[a]').components() == [Ref.Index('a')]
  ref('[a-]').components() == [Ref.Index('a-')]
  ref('[0].a').components() == [Ref.Index('0'), Ref.Dereference('a')]
  ref('[0][a]').components() == [Ref.Index('0'), Ref.Index('a')]
  ref('[.]').components() == [Ref.Index('.')]
  ref('[/]').components() == [Ref.Index('/')]
  ref('[_]').components() == [Ref.Index('_')]
  ref('[-]').components() == [Ref.Index('-')]
  ref('[a.b]').components() == [Ref.Index('a.b')]
  ref('[a/b]').components() == [Ref.Index('a/b')]
  ref('[a_b]').components() == [Ref.Index('a_b')]
  ref('[a-b]').components() == [Ref.Index('a-b')]
  ref('[a/b/c/d]').components() == [Ref.Index('a/b/c/d')]
  ref('[2.0.a_c/d-e]').components() == [Ref.Index('2.0.a_c/d-e')]
  for refstr in ('[a]b', '[]', '[[a]', 'b[[[', 'a.1', '1.a', '.[a]', '0'):
    with pytest.raises(Ref.InvalidRefError):
      ref(refstr)
  for refstr in ('a-b', '-b', 'a-'):
    with pytest.raises(Ref.InvalidRefError):
      ref(refstr)
Esempio n. 2
0
def test_ref_parsing():
    for input in ['', None, type, 1, 3.0, 'hork bork']:
        with pytest.raises(Ref.InvalidRefError):
            ref(input)

    ref('a').components() == [Ref.Dereference('a')]
    ref('.a').components() == [Ref.Dereference('a')]
    ref('a.b').components() == [Ref.Dereference('a'), Ref.Dereference('b')]
    ref('[a]').components() == [Ref.Index('a')]
    ref('[a-]').components() == [Ref.Index('a-')]
    ref('[0].a').components() == [Ref.Index('0'), Ref.Dereference('a')]
    ref('[0][a]').components() == [Ref.Index('0'), Ref.Index('a')]
    for refstr in ('[a]b', '[]', '[[a]', 'b[[[', 'a.1', '1.a', '.[a]', '0'):
        with pytest.raises(Ref.InvalidRefError):
            ref(refstr)
    for refstr in ('a-b', '-b', 'a-'):
        with pytest.raises(Ref.InvalidRefError):
            ref(refstr)