Ejemplo n.º 1
0
def create_element(enName, ptName, refs):
    el = ElementAO()
    el.add_name('en', enName)
    el.add_name('pt', ptName)
    el.save(
    )  # TODO: Create the ElementReference representation and code the reference adding here.
    er = ElementReferenceAO.get_reference(el)
    er.set_reference(refs)
    er.save()
Ejemplo n.º 2
0
    def test_03(self):
        #create element with two names (different lang)
        E3 = ElementAO()
        E3.add_name("pt", "Pular")
        E3.add_name("en", "Jump")
        E3.save()
        #get the persisted element and compare it
        assert E3.external_id is not None
        assert len(E3.element.keys()) is 2
        assert 'pt' in E3.element.keys()
        assert 'en' in E3.element.keys()
        assert E3.element['pt'] is "Pular"
        assert E3.element['en'] is "Jump"
        assert E3.reassigned_to is None
        assert len(E3.reassigned_from) is 0
        assert E3.active is True
        assert E3.updated is not None
        assert E3.created is not None
        #Verify the database
        in_db1 = ElementDB.objects  # pylint: disable=no-member
        assert in_db1.count() is 2
        the_el1 = ElementDB.objects.filter(external_id=E3.external_id).first()  # pylint: disable=no-member
        assert len(the_el1.element.keys()) is 2
        assert "pt" in the_el1.element.keys()
        assert "en" in the_el1.element.keys()
        assert the_el1.element["pt"] == "Pular"
        assert the_el1.element["en"] == "Jump"
        assert the_el1.external_id == E3.external_id
        assert the_el1.active is True
        assert the_el1.updated is not None
        assert the_el1.created is not None
        assert the_el1.reassigned_to is None
        assert not the_el1.reassigned_from
        assert the_el1.compare_application(E3)

        #trying to assign a name in a language not supported by the system
        self.assertRaises(RuntimeError, E3.add_name, "ru", "Begat")
        the_el8 = ElementDB.objects.filter(external_id=E3.external_id).first()  # pylint: disable=no-member
        assert len(the_el8.element.keys()) is 2
Ejemplo n.º 3
0
 def test_01(self):
     #Create a new element without element data (E1)
     E1 = ElementAO()
     ret = E1.save()
     #check
     assert ret is None
     assert E1.external_id is None
     assert len(E1.element.keys()) is 0
     assert E1.reassigned_to is None
     assert len(E1.reassigned_from) is 0
     assert E1.active is True
     assert E1.updated is None
     assert E1.created is None
     #Verify the database
     in_db = ElementDB.objects  # pylint: disable=no-member
     assert in_db.count() is 0
     E1 = None
Ejemplo n.º 4
0
 def test_02(self):
     #Create a new element with element data in one language (E2)
     E2 = ElementAO()
     E2.add_name("pt", "Atirar")
     ret = E2.save()
     #get the persisted element and compare it
     assert ret is not None
     assert E2.external_id is not None
     assert len(E2.element.keys()) is 1
     assert 'pt' in E2.element.keys()
     assert E2.element['pt'] == "Atirar"
     assert E2.reassigned_to is None
     assert not E2.reassigned_from
     assert E2.active is True
     assert E2.updated is not None
     assert E2.created is not None
     #Verify the database
     in_db = ElementDB.objects  # pylint: disable=no-member
     assert in_db.count() is 1
     the_el = ElementDB.objects.filter(external_id=E2.external_id).first()  # pylint: disable=no-member
     assert len(the_el.element.keys()) is 1
     assert "pt" in the_el.element.keys()
     assert the_el.element["pt"] == "Atirar"
     assert the_el.external_id == E2.external_id
     assert the_el.active is True
     assert the_el.updated is not None
     assert the_el.created is not None
     assert the_el.reassigned_to is None
     assert not the_el.reassigned_from
     print(E2)
     print("*" * 200)
     print(the_el)
     print("*" * 200)
     print(E2.__semi_hash__())
     print("*" * 200)
     print(the_el.__semi_hash__())
     print("*" * 200)
     assert the_el.compare_application(E2)