예제 #1
0
def test_edit():
    set_up()
    persisted_state.database_instance().depotauszuege = Depotauszuege()
    add_depotauszug.index(
        VersionedPostRequest({
            'action': 'add',
            'datum_2demokonto': rfc('01.03.2020'),
            'konto': '2demokonto',
            'wert_2demokonto_2demoisin': '100,00'
        }))

    result = add_depotauszug.index(
        VersionedPostRequest({
            'action': 'add',
            'edit_index': 0,
            'datum_2demokonto': rfc('01.03.2020'),
            'konto': '2demokonto',
            'wert_2demokonto_2demoisin': '200,00'
        }))

    db = persisted_state.database_instance()
    assert len(db.depotauszuege.content) == 1
    assert db.depotauszuege.content.Wert[0] == 200
    assert db.depotauszuege.content.Konto[0] == '2demokonto'
    assert db.depotauszuege.content.Depotwert[0] == '2demoisin'
    assert db.depotauszuege.content.Datum[0] == datum('01.03.2020')

    result_element = list(result['letzte_erfassung'])[0]

    assert result_element['fa'] == 'pencil'
    assert result_element['datum'] == '01.03.2020'
    assert result_element['konto'] == '2demokonto'
    assert result_element['depotwert'] == '2demoisin'
    assert result_element['wert'] == '200,00'
예제 #2
0
 def test_add_should_only_fire_once(self):
     self.set_up()
     next_id = request_handler.current_key()
     addgemeinsam.index(
         PostRequest({
             'action': 'add',
             'ID': next_id,
             'date': rfc('1.1.2017'),
             'kategorie': 'Essen',
             'name': 'testname',
             'person': 'testperson',
             'wert': '2,00'
         }))
     addgemeinsam.index(
         PostRequest({
             'action': 'add',
             'ID': next_id,
             'date': rfc('1.1.2017'),
             'kategorie': 'overwritten',
             'name': 'overwritten',
             'person': 'overwritten',
             'wert': '0,00'
         }))
     testdb = persisted_state.database_instance()
     assert len(testdb.gemeinsamebuchungen.content) == 1
     assert testdb.gemeinsamebuchungen.content.Wert[0] == -1 * float('2.00')
     assert testdb.gemeinsamebuchungen.content.Name[0] == 'testname'
     assert testdb.gemeinsamebuchungen.content.Kategorie[0] == 'Essen'
     assert testdb.gemeinsamebuchungen.content.Datum[0] == datum('1.1.2017')
     assert testdb.gemeinsamebuchungen.content.Person[0] == 'testperson'
def test_edit_call_from_ueberischt_should_preset_values_verkauf():
    set_up()
    add_orderdauerauftrag.index(
        VersionedPostRequest({
            'action': 'add',
            'endedatum': rfc('1.1.2017'),
            'startdatum': rfc('1.1.2018'),
            'rhythmus': 'monatlich',
            'name': 'testname',
            'wert': '2,00',
            'typ': add_orderdauerauftrag.TYP_VERKAUF,
            'depotwert': 'demoisin',
            'konto': 'demokonto'
        }))

    context = add_orderdauerauftrag.index(
        PostRequest({
            'action': 'edit',
            'edit_index': '0'
        }))
    assert context['approve_title'] == 'Order-Dauerauftrag aktualisieren'
    preset = context['default_item']

    assert preset['wert'] == '2,00'
    assert preset['typ'] == add_orderdauerauftrag.TYP_VERKAUF
예제 #4
0
    def test_edit_dauerauftrag_ausgabe_to_einnahme(self):
        self.set_up()

        adddauerauftrag.index(
            VersionedPostRequest({
                'action': 'add',
                'startdatum': rfc('1.1.2017'),
                'endedatum': rfc('6.1.2017'),
                'kategorie': 'Essen',
                'typ': 'Ausgabe',
                'rhythmus': 'monatlich',
                'name': 'testname',
                'wert': '2,00'
            }))

        adddauerauftrag.index(
            VersionedPostRequest({
                'action': 'add',
                'edit_index': '0',
                'startdatum': rfc('2.1.2017'),
                'endedatum': rfc('5.1.2017'),
                'kategorie': 'Essen',
                'typ': 'Einnahme',
                'rhythmus': 'monatlich',
                'name': 'testname',
                'wert': '2,50'
            }))

        assert len(db().dauerauftraege.content) == 1
        assert db().dauerauftraege.content.Wert[0] == float('2.50')
        assert db().dauerauftraege.content.Name[0] == 'testname'
        assert db().dauerauftraege.content.Kategorie[0] == 'Essen'
        assert db().dauerauftraege.content.Startdatum[0] == datum('2.1.2017')
        assert db().dauerauftraege.content.Endedatum[0] == datum('5.1.2017')
예제 #5
0
 def test_add_should_only_fire_once(self):
     self.set_up()
     next_id = request_handler.current_key()
     add_sparbuchung.index(
         PostRequest({
             'action': 'add',
             'ID': next_id,
             'datum': rfc('1.1.2017'),
             'name': 'testname',
             'wert': '2,00',
             'typ': Sparbuchungen.TYP_MANUELLER_AUFTRAG,
             'eigenschaft': add_sparbuchung.EIGENSCHAFT_EINZAHLUNG,
             'konto': 'demokonto'
         }))
     add_sparbuchung.index(
         PostRequest({
             'action': 'add',
             'ID': next_id,
             'datum': rfc('2.2.2012'),
             'name': 'overwritten',
             'wert': '0,00',
             'typ': 'overwritten',
             'eigenschaft': add_sparbuchung.EIGENSCHAFT_EINZAHLUNG,
             'konto': 'overwritten'
         }))
     db = persisted_state.database_instance()
     assert len(db.sparbuchungen.content) == 1
     assert db.sparbuchungen.content.Datum[0] == datum('1.1.2017')
     assert db.sparbuchungen.content.Wert[0] == float('2.00')
     assert db.sparbuchungen.content.Name[0] == 'testname'
     assert db.sparbuchungen.content.Typ[
         0] == Sparbuchungen.TYP_MANUELLER_AUFTRAG
     assert db.sparbuchungen.content.Konto[0] == 'demokonto'
예제 #6
0
    def test_edit_ausgabe(self):
        self.set_up()

        addgemeinsam.index(
            VersionedPostRequest({
                'action': 'add',
                'date': rfc('1.1.2017'),
                'kategorie': 'Essen',
                'name': 'testname',
                'person': 'testperson',
                'wert': '2,00'
            }))

        addgemeinsam.index(
            VersionedPostRequest({
                'action': 'add',
                'edit_index': '0',
                'date': rfc('5.1.2017'),
                'kategorie': 'Essen',
                'name': 'testname',
                'person': 'testperson2',
                'wert': '2,50'
            }))

        testdb = persisted_state.database_instance()
        assert testdb.gemeinsamebuchungen.content.Wert[0] == -1 * float('2.50')
        assert testdb.gemeinsamebuchungen.content.Name[0] == 'testname'
        assert testdb.gemeinsamebuchungen.content.Kategorie[0] == 'Essen'
        assert testdb.gemeinsamebuchungen.content.Datum[0] == datum('5.1.2017')
        assert testdb.gemeinsamebuchungen.content.Person[0] == 'testperson2'
예제 #7
0
    def test_edit_ausgabe(self):
        self.set_up()

        addausgabe.handle_request(VersionedPostRequest(
            {'action':'add',
             'date': rfc('1.1.2017'),
             'kategorie':'Essen',
             'name':'testname',
             'wert':'2,00'
             }
         ))

        addausgabe.handle_request(VersionedPostRequest(
            {'action':'add',
             'edit_index':'0',
             'date': rfc('5.1.2017'),
             'kategorie':'Essen',
             'name':'testname',
             'wert':'2,50'
             }
         ))
        testdb = database_instance()
        assert len(testdb.einzelbuchungen.content) == 1
        assert testdb.einzelbuchungen.content.Wert[0] == -1 * float('2.50')
        assert testdb.einzelbuchungen.content.Name[0] == 'testname'
        assert testdb.einzelbuchungen.content.Kategorie[0] == 'Essen'
        assert testdb.einzelbuchungen.content.Datum[0] == datum('5.1.2017')
예제 #8
0
 def test_add_should_only_fire_once(self):
     self.set_up()
     next_id = request_handler.current_key()
     add_order.index(PostRequest(
         {'action': 'add',
          'ID': next_id,
          'datum': rfc('1.1.2017'),
          'name':'testname',
          'wert':'2,00',
          'typ': add_order.TYP_KAUF,
          'depotwert': 'demoisin',
          'konto': 'demokonto'
          }
      ))
     add_order.index(PostRequest(
         {'action': 'add',
          'ID': next_id,
          'datum': rfc('2.2.2012'),
          'name': 'overwritten',
          'wert': '0,00',
          'typ': add_order.TYP_KAUF,
          'depotwert': 'overwritten',
          'konto': 'overwritten'
          }
      ))
     db = persisted_state.database_instance()
     assert len(db.order.content) == 1
     assert db.order.content.Datum[0] == datum('1.1.2017')
     assert db.order.content.Wert[0] == float('2.00')
     assert db.order.content.Name[0] == 'testname'
     assert db.order.content.Depotwert[0] == 'demoisin'
     assert db.order.content.Konto[0] == 'demokonto'
def test_add_order_should_show_in_recently_added():
    set_up()
    result = add_orderdauerauftrag.index(
        VersionedPostRequest({
            'action': 'add',
            'startdatum': rfc('1.1.2017'),
            'endedatum': rfc('1.1.2018'),
            'rhythmus': 'monatlich',
            'name': 'testname',
            'wert': '2,00',
            'typ': add_orderdauerauftrag.TYP_KAUF,
            'depotwert': 'demoisin',
            'konto': 'demokonto'
        }))
    result_element = list(result['letzte_erfassung'])[0]

    assert result_element['fa'] == 'plus'
    assert result_element['startdatum'] == '01.01.2017'
    assert result_element['endedatum'] == '01.01.2018'
    assert result_element['rhythmus'] == 'monatlich'
    assert result_element['konto'] == 'demokonto'
    assert result_element['name'] == 'testname'
    assert result_element['wert'] == '2,00'
    assert result_element['typ'] == add_orderdauerauftrag.TYP_KAUF
    assert result_element['depotwert'] == 'demoisin'
예제 #10
0
    def test_edit_ausgabe(self):
        self.set_up()

        addeinnahme.index(VersionedPostRequest(
            {'action':'add',
             'date': rfc('1.1.2017'),
             'kategorie':'Essen',
             'name':'testname',
             'wert':'2,00'
             }
         ))

        addeinnahme.index(VersionedPostRequest(
            {'action':'add',
             'edit_index':'0',
             'date': rfc('5.1.2017'),
             'kategorie':'Essen',
             'name':'testname',
             'wert':'2,50'
             }
         ))

        assert len(db().einzelbuchungen.content) == 1
        assert db().einzelbuchungen.content.Wert[0] == float('2.50')
        assert db().einzelbuchungen.content.Name[0] == 'testname'
        assert db().einzelbuchungen.content.Kategorie[0] == 'Essen'
        assert db().einzelbuchungen.content.Datum[0] == datum('5.1.2017')
예제 #11
0
    def test_add_ausgabe_should_only_fire_once(self):
        self.set_up()
        request_key = request_handler.current_key()

        addausgabe.index(PostRequest(
            {'action':'add',
             'ID':request_key,
             'date': rfc('1.1.2017'),
             'kategorie':'Essen',
             'name':'testname',
             'wert':'2,00'
             }
         ))

        addausgabe.index(PostRequest(
            {'action':'add',
             'ID':request_key,
             'date': rfc('1.1.2017'),
             'kategorie':'overwritten',
             'name':'overwritten',
             'wert':'0,00'
             }
         ))

        testdb = database_instance()
        assert len(testdb.einzelbuchungen.content) == 1
        assert testdb.einzelbuchungen.content.Wert[0] == -1 * float('2.00')
        assert testdb.einzelbuchungen.content.Name[0] == 'testname'
        assert testdb.einzelbuchungen.content.Kategorie[0] == 'Essen'
        assert testdb.einzelbuchungen.content.Datum[0] == datum('1.1.2017')
예제 #12
0
def test_add_should_only_fire_once():
    set_up()
    next_id = request_handler.current_key()
    add_depotauszug.index(
        PostRequest({
            'action': 'add',
            'ID': next_id,
            'datum_2demokonto': rfc('01.03.2020'),
            'konto': '2demokonto',
            'wert_2demokonto_2demoisin': '100,00'
        }))
    add_depotauszug.index(
        PostRequest({
            'action': 'add',
            'ID': next_id,
            'datum_2demokonto': rfc('01.03.2020'),
            'konto': 'overwritten',
            'wert_2demokonto_2demoisin': '9999,00'
        }))

    buchungen = persisted_state.database_instance().depotauszuege.content
    assert len(buchungen) == 10
    assert buchungen.Wert[9] == 100
    assert buchungen.Konto[9] == '2demokonto'
    assert buchungen.Depotwert[9] == '2demoisin'
    assert buchungen.Datum[9] == datum('01.03.2020')
예제 #13
0
    def test_editCallFromUeberischt_presetValuesCorrect(self):
        self.set_up()

        db().dauerauftraege.add(datum('10.10.2010'), datum('10.10.2011'),
                                '0kategorie', '0name', 'monatlich', 10)
        context = adddauerauftrag.index(
            PostRequest({
                'action': 'edit',
                'edit_index': '0'
            }))
        assert context['approve_title'] == 'Dauerauftrag aktualisieren'

        preset = context['default_item']
        assert preset['Name'] == '0name'
        assert preset['Startdatum'] == rfc('10.10.2010')
        assert preset['Endedatum'] == rfc('10.10.2011')
        assert preset['Kategorie'] == '0kategorie'
        assert preset['Wert'] == '10,00'
        assert preset['typ'] == 'Einnahme'

        db().dauerauftraege.add(datum('10.10.2015'), datum('10.10.2015'),
                                '0kategorie', '0name', 'monatlich', -10)
        context = adddauerauftrag.handle_request(
            PostRequest({
                'action': 'edit',
                'edit_index': '1'
            }))
        preset = context['default_item']
        assert preset['Startdatum'] == rfc('10.10.2015')
        assert preset['Wert'] == '10,00'
        assert preset['typ'] == 'Ausgabe'
def test_edit():
    set_up()
    add_orderdauerauftrag.index(
        VersionedPostRequest({
            'action': 'add',
            'startdatum': rfc('1.1.2017'),
            'endedatum': rfc('1.1.2018'),
            'rhythmus': 'monatlich',
            'name': 'testname',
            'wert': '2,00',
            'typ': add_orderdauerauftrag.TYP_KAUF,
            'depotwert': 'demoisin',
            'konto': 'demokonto'
        }))

    result = add_orderdauerauftrag.index(
        VersionedPostRequest({
            'action': 'add',
            'edit_index': 0,
            'startdatum': rfc('2.1.2017'),
            'endedatum': rfc('2.1.2018'),
            'rhythmus': 'monatlich',
            'name': '2testname',
            'wert': '3,00',
            'typ': add_orderdauerauftrag.TYP_VERKAUF,
            'depotwert': '2demoisin',
            'konto': '2demokonto'
        }))

    db = persisted_state.database_instance()
    assert len(db.orderdauerauftrag.content) == 1
    assert db.orderdauerauftrag.content.Startdatum[0] == datum('2.1.2017')
    assert db.orderdauerauftrag.content.Endedatum[0] == datum('2.1.2018')
    assert db.orderdauerauftrag.content.Rhythmus[0] == 'monatlich'
    assert db.orderdauerauftrag.content.Wert[0] == float('-3.00')
    assert db.orderdauerauftrag.content.Name[0] == '2testname'
    assert db.orderdauerauftrag.content.Depotwert[0] == '2demoisin'
    assert db.orderdauerauftrag.content.Konto[0] == '2demokonto'

    result_element = list(result['letzte_erfassung'])[0]

    assert result_element['fa'] == 'pencil'
    assert result_element['startdatum'] == '02.01.2017'
    assert result_element['endedatum'] == '02.01.2018'
    assert result_element['rhythmus'] == 'monatlich'
    assert result_element['konto'] == '2demokonto'
    assert result_element['name'] == '2testname'
    assert result_element['depotwert'] == '2demoisin'
    assert result_element['wert'] == '3,00'
    assert result_element['typ'] == add_orderdauerauftrag.TYP_VERKAUF
예제 #15
0
    def test_editCallFromUeberischt_shouldPresetValues_andRenameButton(self):
        self.set_up()
        add_sparbuchung.index(
            VersionedPostRequest({
                'action': 'add',
                'datum': rfc('1.1.2017'),
                'name': 'testname',
                'wert': '2,00',
                'typ': Sparbuchungen.TYP_MANUELLER_AUFTRAG,
                'eigenschaft': add_sparbuchung.EIGENSCHAFT_EINZAHLUNG,
                'konto': 'demokonto'
            }))

        context = add_sparbuchung.index(
            PostRequest({
                'action': 'edit',
                'edit_index': '0'
            }))
        assert context['approve_title'] == 'Sparbuchung aktualisieren'
        preset = context['default_item']

        assert preset['edit_index'] == '0'
        assert preset['datum'] == '2017-01-01'
        assert preset['konto'] == 'demokonto'
        assert preset['name'] == 'testname'
        assert preset['wert'] == '2,00'
        assert preset['eigenschaft'] == 'Einzahlung'
        assert preset['typ'] == Sparbuchungen.TYP_MANUELLER_AUFTRAG
예제 #16
0
def test_add():
    set_up()
    assert len(persisted_state.database_instance().depotauszuege.content) == 9

    add_depotauszug.index(
        VersionedPostRequest({
            'action': 'add',
            'datum_2demokonto': rfc('01.03.2020'),
            'konto': '2demokonto',
            'wert_2demokonto_2demoisin': '100,00',
            'wert_2demokonto_3demoisin': '200,00'
        }))

    db = persisted_state.database_instance()
    assert len(db.depotauszuege.content) == 11
    buchungen = db.depotauszuege.get_by(datum('01.03.2020'), '2demokonto')
    print(buchungen)

    assert len(buchungen) == 2

    assert buchungen.Wert[9] == 100
    assert buchungen.Konto[9] == '2demokonto'
    assert buchungen.Depotwert[9] == '2demoisin'
    assert buchungen.Datum[9] == datum('01.03.2020')

    assert buchungen.Wert[10] == 200
    assert buchungen.Konto[10] == '2demokonto'
    assert buchungen.Depotwert[10] == '3demoisin'
    assert buchungen.Datum[10] == datum('01.03.2020')
예제 #17
0
    def test_edit_sparbuchung(self):
        self.set_up()
        add_sparbuchung.index(
            VersionedPostRequest({
                'action': 'add',
                'datum': rfc('1.1.2017'),
                'name': 'testname',
                'wert': '2,00',
                'typ': Sparbuchungen.TYP_MANUELLER_AUFTRAG,
                'eigenschaft': add_sparbuchung.EIGENSCHAFT_EINZAHLUNG,
                'konto': 'demokonto'
            }))

        result = add_sparbuchung.index(
            VersionedPostRequest({
                'action': 'add',
                'edit_index': 0,
                'datum': rfc('2.2.2012'),
                'name': 'testname2',
                'wert': '3,00',
                'typ': Sparbuchungen.TYP_MANUELLER_AUFTRAG,
                'eigenschaft': add_sparbuchung.EIGENSCHAFT_EINZAHLUNG,
                'konto': 'demokonto2'
            }))

        db = persisted_state.database_instance()
        assert len(db.sparbuchungen.content) == 1
        assert db.sparbuchungen.content.Datum[0] == datum('2.2.2012')
        assert db.sparbuchungen.content.Wert[0] == float('3.00')
        assert db.sparbuchungen.content.Name[0] == 'testname2'
        assert db.sparbuchungen.content.Typ[
            0] == Sparbuchungen.TYP_MANUELLER_AUFTRAG
        assert db.sparbuchungen.content.Konto[0] == 'demokonto2'

        result_element = list(result['letzte_erfassung'])[0]

        assert result_element['fa'] == 'pencil'
        assert result_element['datum'] == '02.02.2012'
        assert result_element['konto'] == 'demokonto2'
        assert result_element['name'] == 'testname2'
        assert result_element['wert'] == '3,00'
        assert result_element['typ'] == Sparbuchungen.TYP_MANUELLER_AUFTRAG
예제 #18
0
def test_add_dauerauftrag():
    set_up()
    adddauerauftrag.index(
        VersionedPostRequest({
            'action': 'add',
            'startdatum': rfc('1.1.2017'),
            'endedatum': rfc('6.1.2017'),
            'kategorie': 'Essen',
            'typ': 'Ausgabe',
            'rhythmus': 'monatlich',
            'name': 'testname',
            'wert': '2,00'
        }))

    assert len(db().dauerauftraege.content) == 1
    assert db().dauerauftraege.content.Wert[0] == -1 * float('2.00')
    assert db().dauerauftraege.content.Name[0] == 'testname'
    assert db().dauerauftraege.content.Kategorie[0] == 'Essen'
    assert db().dauerauftraege.content.Startdatum[0] == datum('1.1.2017')
    assert db().dauerauftraege.content.Endedatum[0] == datum('6.1.2017')
    assert db().dauerauftraege.content.Rhythmus[0] == 'monatlich'
예제 #19
0
    def test_edit_ausgabe_should_only_fire_once(self):
        self.set_up()

        addeinnahme.index(VersionedPostRequest(
            {'action':'add',
             'date': rfc('1.1.2017'),
             'kategorie':'Essen',
             'name':'testname',
             'wert':'2,00'
             }
         ))

        next_id = request_handler.current_key()
        addeinnahme.index(PostRequest(
            {'action':'add',
             'ID':next_id,
             'edit_index':'0',
             'date': rfc('5.1.2017'),
             'kategorie':'Essen',
             'name':'testname',
             'wert':'2,50'
             }
         ))

        addeinnahme.index(PostRequest(
            {'action':'add',
             'ID':next_id,
             'edit_index':'0',
             'date': rfc('5.1.2017'),
             'kategorie':'overwritten',
             'name':'overwritten',
             'wert':'0,0'
             }
         ))

        assert len(db().einzelbuchungen.content) == 1
        assert db().einzelbuchungen.content.Wert[0] == float('2.50')
        assert db().einzelbuchungen.content.Name[0] == 'testname'
        assert db().einzelbuchungen.content.Kategorie[0] == 'Essen'
        assert db().einzelbuchungen.content.Datum[0] == datum('5.1.2017')
예제 #20
0
def test_edit_should_only_fire_once():
    set_up()
    persisted_state.database_instance().depotauszuege = Depotauszuege()
    add_depotauszug.index(
        VersionedPostRequest({
            'action': 'add',
            'datum_2demokonto': rfc('01.03.2020'),
            'konto': '2demokonto',
            'wert_2demokonto_2demoisin': '100,00'
        }))

    next_id = request_handler.current_key()
    add_depotauszug.index(
        PostRequest({
            'action': 'add',
            'ID': next_id,
            'edit_index': 0,
            'datum_2demokonto': rfc('01.03.2020'),
            'konto': '2demokonto',
            'wert_2demokonto_2demoisin': '200,00'
        }))

    add_depotauszug.index(
        PostRequest({
            'action': 'add',
            'ID': next_id,
            'edit_index': 0,
            'datum_2demokonto': rfc('01.03.2020'),
            'konto': 'overwritten',
            'wert_2demokonto_2demoisin': '0,00'
        }))

    db = persisted_state.database_instance()
    assert len(db.depotauszuege.content) == 1
    assert db.depotauszuege.content.Wert[0] == 200
    assert db.depotauszuege.content.Konto[0] == '2demokonto'
    assert db.depotauszuege.content.Depotwert[0] == '2demoisin'
    assert db.depotauszuege.content.Datum[0] == datum('01.03.2020')
예제 #21
0
def test_add_order_for_existing_auszug_should_return_error():
    set_up()

    result = add_depotauszug.index(
        VersionedPostRequest({
            'action': 'add',
            'datum_2demokonto': rfc('01.01.2020'),
            'konto': '2demokonto',
            'wert_2demokonto_2demoisin': '100,00'
        }))

    assert '%Errortext' in result
    assert result[
        '%Errortext'] == 'Für es besteht bereits ein Kontoauszug für 2demokonto am 01.01.2020'
예제 #22
0
    def test_add_dauerauftrag_should_show_in_recently_added(self):
        self.set_up()
        result = adddauerauftrag.handle_request(
            VersionedPostRequest({
                'action': 'add',
                'startdatum': rfc('1.1.2017'),
                'endedatum': rfc('6.1.2017'),
                'typ': 'Ausgabe',
                'kategorie': 'Essen',
                'name': 'testname',
                'rhythmus': 'monatlich',
                'wert': '-2,00'
            }))

        result_element = list(result['letzte_erfassung'])[0]

        assert result_element['fa'] == 'plus'
        assert result_element['startdatum'] == '01.01.2017'
        assert result_element['endedatum'] == '06.01.2017'
        assert result_element['kategorie'] == 'Essen'
        assert result_element['name'] == 'testname'
        assert result_element['rhythmus'] == 'monatlich'
        assert result_element['wert'] == '2,00'
예제 #23
0
    def test_add_dauerauftrag_should_only_fire_once(self):
        self.set_up()

        next_id = request_handler.current_key()
        adddauerauftrag.index(
            PostRequest({
                'action': 'add',
                'ID': next_id,
                'startdatum': rfc('2.1.2017'),
                'endedatum': rfc('5.1.2017'),
                'kategorie': 'Essen',
                'typ': 'Ausgabe',
                'rhythmus': 'monatlich',
                'name': 'testname',
                'wert': '2,50'
            }))

        adddauerauftrag.index(
            PostRequest({
                'action': 'add',
                'ID': next_id,
                'startdatum': rfc('2.1.2017'),
                'endedatum': rfc('5.1.2017'),
                'kategorie': 'overwritten',
                'typ': 'Ausgabe',
                'rhythmus': 'overwritten',
                'name': 'overwritten',
                'wert': '0,00'
            }))

        assert len(db().dauerauftraege.content) == 1
        assert db().dauerauftraege.content.Wert[0] == -1 * float('2.50')
        assert db().dauerauftraege.content.Name[0] == 'testname'
        assert db().dauerauftraege.content.Kategorie[0] == 'Essen'
        assert db().dauerauftraege.content.Startdatum[0] == datum('2.1.2017')
        assert db().dauerauftraege.content.Endedatum[0] == datum('5.1.2017')
def test_add():
    set_up()
    add_orderdauerauftrag.index(
        VersionedPostRequest({
            'action': 'add',
            'startdatum': rfc('1.1.2017'),
            'endedatum': rfc('1.1.2018'),
            'rhythmus': 'monatlich',
            'name': 'testname',
            'wert': '2,00',
            'typ': add_orderdauerauftrag.TYP_KAUF,
            'depotwert': 'demoisin',
            'konto': 'demokonto'
        }))

    db = persisted_state.database_instance()
    assert len(db.orderdauerauftrag.content) == 1
    assert db.orderdauerauftrag.content.Startdatum[0] == datum('1.1.2017')
    assert db.orderdauerauftrag.content.Endedatum[0] == datum('1.1.2018')
    assert db.orderdauerauftrag.content.Rhythmus[0] == 'monatlich'
    assert db.orderdauerauftrag.content.Wert[0] == float('2.00')
    assert db.orderdauerauftrag.content.Name[0] == 'testname'
    assert db.orderdauerauftrag.content.Depotwert[0] == 'demoisin'
    assert db.orderdauerauftrag.content.Konto[0] == 'demokonto'
def test_edit_should_only_fire_once():
    set_up()
    add_orderdauerauftrag.index(
        VersionedPostRequest({
            'action': 'add',
            'startdatum': rfc('1.1.2017'),
            'endedatum': rfc('1.1.2018'),
            'rhythmus': 'monatlich',
            'name': 'testname',
            'wert': '2,00',
            'typ': add_orderdauerauftrag.TYP_KAUF,
            'depotwert': 'demoisin',
            'konto': 'demokonto'
        }))

    next_id = request_handler.current_key()
    add_orderdauerauftrag.index(
        PostRequest({
            'action': 'add',
            'ID': next_id,
            'edit_index': 0,
            'startdatum': rfc('2.1.2017'),
            'endedatum': rfc('2.1.2018'),
            'rhythmus': 'monatlich',
            'name': '2testname',
            'wert': '3,00',
            'typ': add_orderdauerauftrag.TYP_VERKAUF,
            'depotwert': '2demoisin',
            'konto': '2demokonto'
        }))

    add_orderdauerauftrag.index(
        PostRequest({
            'action': 'add',
            'ID': next_id,
            'edit_index': 0,
            'endedatum': rfc('1.1.2010'),
            'startdatum': rfc('1.1.2010'),
            'rhythmus': 'monatlich',
            'name': 'overwritten',
            'wert': '0,00',
            'typ': add_orderdauerauftrag.TYP_KAUF,
            'depotwert': 'overwritten',
            'konto': 'overwritten'
        }))

    db = persisted_state.database_instance()
    assert len(db.orderdauerauftrag.content) == 1
    assert db.orderdauerauftrag.content.Startdatum[0] == datum('2.1.2017')
    assert db.orderdauerauftrag.content.Endedatum[0] == datum('2.1.2018')
    assert db.orderdauerauftrag.content.Rhythmus[0] == 'monatlich'
    assert db.orderdauerauftrag.content.Wert[0] == float('-3.00')
    assert db.orderdauerauftrag.content.Name[0] == '2testname'
    assert db.orderdauerauftrag.content.Depotwert[0] == '2demoisin'
    assert db.orderdauerauftrag.content.Konto[0] == '2demokonto'
예제 #26
0
def test_add_with_empty_value_should_skip():
    set_up()
    persisted_state.database_instance().depotauszuege = Depotauszuege()

    assert len(persisted_state.database_instance().depotauszuege.content) == 0

    add_depotauszug.index(
        VersionedPostRequest({
            'action': 'add',
            'datum_2demokonto': rfc('01.03.2020'),
            'konto': '2demokonto',
            'wert_2demokonto_2demoisin': '0,00',
            'wert_2demokonto_3demoisin': '0,00'
        }))

    db = persisted_state.database_instance()
    assert len(db.depotauszuege.content) == 0
예제 #27
0
 def test_editCallFromUeberischt_shouldPresetValues_andRenameButton(self):
     self.set_up()
     db = persisted_state.database_instance()
     db.gemeinsamebuchungen.add(datum('10.10.2010'), 'kategorie',
                                'ausgaben_name', -10, 'Sebastian')
     context = addgemeinsam.index(
         PostRequest({
             'action': 'edit',
             'edit_index': '0'
         }))
     assert context['approve_title'] == 'Gemeinsame Ausgabe aktualisieren'
     preset = context['default_item']
     assert preset['datum'] == rfc('10.10.2010')
     assert preset['edit_index'] == '0'
     assert preset['kategorie'] == 'kategorie'
     assert preset['name'] == 'ausgaben_name'
     assert preset['wert'] == '10,00'
     assert preset['person'] == 'Sebastian'
예제 #28
0
def test_add_order_should_show_in_recently_added():
    set_up()

    result = add_depotauszug.index(
        VersionedPostRequest({
            'action': 'add',
            'datum_2demokonto': rfc('01.03.2020'),
            'konto': '2demokonto',
            'wert_2demokonto_2demoisin': '100,00'
        }))

    result_element = list(result['letzte_erfassung'])[0]

    assert result_element['fa'] == 'plus'
    assert result_element['datum'] == '01.03.2020'
    assert result_element['konto'] == '2demokonto'
    assert result_element['depotwert'] == '2demoisin'
    assert result_element['wert'] == '100,00'
예제 #29
0
 def test_add_shouldAddDynamicEinzelbuchung(self):
     self.set_up()
     addgemeinsam.index(
         VersionedPostRequest({
             'action': 'add',
             'date': rfc('1.1.2017'),
             'kategorie': 'Essen',
             'name': 'testname',
             'person': 'testperson',
             'wert': '2,00'
         }))
     testdb = persisted_state.database_instance()
     assert testdb.einzelbuchungen.content.Wert[0] == -1 * 0.5 * float(
         '2.00')
     assert testdb.einzelbuchungen.content.Kategorie[0] == 'Essen'
     assert testdb.einzelbuchungen.content.Datum[0] == datum('1.1.2017')
     assert testdb.einzelbuchungen.content.Name[
         0] == 'testname (noch nicht abgerechnet, von testperson)'
예제 #30
0
    def test_add_ausgabe_should_show_in_recently_added(self):
        self.set_up()
        result = addausgabe.handle_request(VersionedPostRequest(
            {'action':'add',
             'date': rfc('1.1.2017'),
             'kategorie':'Essen',
             'name':'testname',
             'wert':'2,00'
             }
         ))

        result_element = list(result['letzte_erfassung'])[0]

        assert result_element['fa'] == 'plus'
        assert result_element['datum'] == '01.01.2017'
        assert result_element['kategorie'] == 'Essen'
        assert result_element['name'] == 'testname'
        assert result_element['wert'] == '-2,00'