Example #1
0
 def test_copy(self):
     kw = Keyword(name='Keyword')
     copy = kw.copy()
     assert_equal(kw.name, copy.name)
     copy.name += ' copy'
     assert_not_equal(kw.name, copy.name)
     assert_equal(id(kw.tags), id(copy.tags))
Example #2
0
 def test_filter_with_predicate(self):
     x = Keyword(name='x')
     predicate = lambda item: item.name == 'x'
     body = Body(items=[Keyword(), x, Keyword()])
     assert_equal(body.filter(predicate=predicate), [x])
     body = Body(items=[Keyword(), If(), x, For(), Keyword()])
     assert_equal(body.filter(keywords=True, predicate=predicate), [x])
Example #3
0
 def test_keywords_deprecation(self):
     self.test.body = [Keyword(), Keyword(), Keyword()]
     with warnings.catch_warnings(record=True) as w:
         kws = self.test.keywords
         assert_equal(len(kws), 3)
         assert_true('deprecated' in str(w[0].message))
     assert_raises(AttributeError, kws.append, Keyword())
     assert_raises(AttributeError, setattr, self.test, 'keywords', [])
Example #4
0
 def test_filter(self):
     k1, k2, k3 = Keyword(), Keyword(), Keyword()
     f1, i1, i2 = For(), If(), If()
     body = Body(items=[k1, f1, i1, i2, k2, k3])
     assert_equal(body.filter(keywords=True), [k1, k2, k3])
     assert_equal(body.filter(keywords=False), [f1, i1, i2])
     assert_equal(body.filter(ifs=True, fors=True), [f1, i1, i2])
     assert_equal(body.filter(ifs=False, fors=False), [k1, k2, k3])
     assert_equal(body.filter(), [k1, f1, i1, i2, k2, k3])
Example #5
0
 def test_string_reprs(self):
     for kw, exp_str, exp_repr in [
         (Keyword(),
          '',
          "Keyword(name='', args=(), assign=())"),
         (Keyword('name'),
          'name',
          "Keyword(name='name', args=(), assign=())"),
         (Keyword(None),
          'None',
          "Keyword(name=None, args=(), assign=())"),
         (Keyword('Name', args=('a1', 'a2')),
          'Name    a1    a2',
          "Keyword(name='Name', args=('a1', 'a2'), assign=())"),
         (Keyword('Name', assign=('${x}', '${y}')),
          '${x}    ${y}    Name',
          "Keyword(name='Name', args=(), assign=('${x}', '${y}'))"),
         (Keyword('Name', assign=['${x}='], args=['x']),
          '${x}=    Name    x',
          "Keyword(name='Name', args=['x'], assign=['${x}='])"),
         (Keyword('Name', args=(1, 2, 3)),
          'Name    1    2    3',
          "Keyword(name='Name', args=(1, 2, 3), assign=())"),
         (Keyword(assign=[u'${\xe3}'], name=u'\xe4', args=[u'\xe5']),
          u'${\xe3}    \xe4    \xe5',
          u'Keyword(name=%r, args=[%r], assign=[%r])' % (u'\xe4', u'\xe5', u'${\xe3}'))
     ]:
         assert_equal(unicode(kw), exp_str)
         assert_equal(repr(kw), 'robot.model.' + exp_repr)
         if PY2:
             assert_equal(str(kw), unicode(kw).encode('UTF-8'))
Example #6
0
 def test_keyword_teardown(self):
     kw = Keyword()
     assert_true(not kw.has_teardown)
     assert_true(not kw.teardown)
     assert_equal(kw.teardown.name, None)
     assert_equal(kw.teardown.type, 'TEARDOWN')
     kw.teardown = Keyword()
     assert_true(kw.has_teardown)
     assert_true(kw.teardown)
     assert_equal(kw.teardown.name, '')
     assert_equal(kw.teardown.type, 'TEARDOWN')
     kw.teardown = None
     assert_true(not kw.has_teardown)
     assert_true(not kw.teardown)
Example #7
0
 def test_id_with_messages_in_body(self):
     from robot.result.model import Keyword
     kw = Keyword()
     assert_equal(kw.body.create_message().id, 'k1-m1')
     assert_equal(kw.body.create_keyword().id, 'k1-k1')
     assert_equal(kw.body.create_message().id, 'k1-m2')
     assert_equal(kw.body.create_keyword().id, 'k1-k2')
Example #8
0
 def test_deepcopy_with_attributes(self):
     copy = Keyword(name='Orig').deepcopy(name='New', doc='New')
     assert_equal(copy.name, 'New')
     assert_equal(copy.doc, 'New')
Example #9
0
 def test_copy_with_attributes(self):
     kw = Keyword(name='Orig', doc='Orig', tags=['orig'])
     copy = kw.copy(name='New', doc='New', tags=['new'])
     assert_equal(copy.name, 'New')
     assert_equal(copy.doc, 'New')
     assert_equal(list(copy.tags), ['new'])
Example #10
0
 def test_slots(self):
     assert_raises(AttributeError, setattr, Keyword(), 'attr', 'value')
Example #11
0
 def test_test_body_id(self):
     kws = [Keyword(), Keyword(), Keyword()]
     TestSuite().tests.create().body.extend(kws)
     assert_equal([k.id for k in kws], ['s1-t1-k1', 's1-t1-k2', 's1-t1-k3'])
Example #12
0
 def test_id_without_parent(self):
     assert_equal(Keyword().id, 'k1')
     assert_equal(Keyword(type=Keyword.SETUP_TYPE).id, 'k1')
     assert_equal(Keyword(type=Keyword.TEARDOWN_TYPE).id, 'k1')
 def test_sets_parent_and_type_correctly(self):
     suite = TestSuite()
     kw = Keyword('KW Name')
     fixture = create_fixture(kw, suite, Keyword.TEARDOWN)
     self._assert_fixture(fixture, suite, Keyword.TEARDOWN)