def test_with_mapping_to_other_kategorie(self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, 'nicht essen') driver.get('http://localhost:5000/import/') fill_element(driver, 'import', self._data) driver.find_element_by_name('btn_import').click() assert pagename(driver) == 'Kategorien zuweisen' select_option(driver, 'Essen_mapping', 'als nicht essen importieren') driver.find_element_by_name('action').click() driver.get('http://localhost:5000/uebersicht/') open_table_button = driver.find_element_by_id('open_2017.3') open_table_button.click() assert driver.find_element_by_id('item_0_id').get_attribute('innerHTML') == '0' assert driver.find_element_by_id('item_0_name').get_attribute('innerHTML') == 'Edeka' assert driver.find_element_by_id('item_0_kategorie').get_attribute('innerHTML') == 'nicht essen' assert driver.find_element_by_id('item_0_datum').get_attribute('innerHTML') == '06.03.2017' assert driver.find_element_by_id('item_0_wert').get_attribute('innerHTML') == '-10,00' close_driver(driver)
def test_with_existing_kategorie(self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, 'Essen') driver.get('http://localhost:5000/import/') fill_element(driver, 'import', self._data) driver.find_element_by_name('btn_import').click() assert pagename(driver) == 'Export / Import' driver.get('http://localhost:5000/uebersicht/') open_table_button = driver.find_element_by_id('open_2017.3') open_table_button.click() assert driver.find_element_by_id('item_0_id').get_attribute( 'innerHTML') == '0' assert driver.find_element_by_id('item_0_name').get_attribute( 'innerHTML') == 'Edeka' assert driver.find_element_by_id('item_0_kategorie').get_attribute( 'innerHTML') == 'Essen' assert driver.find_element_by_id('item_0_datum').get_attribute( 'innerHTML') == '06.03.2017' assert driver.find_element_by_id('item_0_wert').get_attribute( 'innerHTML') == '-10.00' close_driver(driver)
def test_set_limit(self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, '0test_kategorie') self._add_ausgabe(driver, '2010-01-01', '0name', '0test_kategorie', '100', 'Partner') driver.get('http://localhost:5000/gemeinsamabrechnen/') assert content_of(driver, 'ausgabe_self') == "0.00" assert content_of(driver, 'ausgabe_self_soll') == "50.00" assert content_of(driver, 'ausgabe_self_diff') == "-50.00" assert content_of(driver, 'ausgabe_partner') == "100.00" assert content_of(driver, 'ausgabe_partner_soll') == "50.00" assert content_of(driver, 'ausgabe_partner_diff') == "50.00" driver.find_element_by_id('set_limit').click() select_option(driver, 'set_limit_fuer', 'test') fill_element(driver, 'set_limit_value', '30') driver.find_element_by_id('abrechnung_aktualisieren').click() assert content_of(driver, 'ausgabe_self') == "0.00" assert content_of(driver, 'ausgabe_self_soll') == "30.00" assert content_of(driver, 'ausgabe_self_diff') == "-30.00" assert content_of(driver, 'ausgabe_partner') == "100.00" assert content_of(driver, 'ausgabe_partner_soll') == "70.00" assert content_of(driver, 'ausgabe_partner_diff') == "30.00" driver.find_element_by_id('abrechnen').click() print('[', content_of(driver, 'abrechnung').replace('<br>', '\n'), ']') assert content_of(driver, 'abrechnung').replace( '<br>', '\n') == self.set_limit_abrechnung close_driver(driver)
def test_change_verhaeltnis(self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, '0test_kategorie') self._add_ausgabe(driver, '2010-01-01', '0name', '0test_kategorie', '100', 'Partner') driver.get('http://localhost:5000/gemeinsamabrechnen/') assert content_of(driver, 'ausgabe_self') == "0.00" assert content_of(driver, 'ausgabe_self_soll') == "50.00" assert content_of(driver, 'ausgabe_self_diff') == "-50.00" assert content_of(driver, 'ausgabe_partner') == "100.00" assert content_of(driver, 'ausgabe_partner_soll') == "50.00" assert content_of(driver, 'ausgabe_partner_diff') == "50.00" fill_element_by_id(driver, 'abrechnungsverhaeltnis', '70') driver.find_element_by_id('abrechnung_aktualisieren').click() assert content_of(driver, 'ausgabe_self') == "0.00" assert content_of(driver, 'ausgabe_self_soll') == "70.00" assert content_of(driver, 'ausgabe_self_diff') == "-70.00" assert content_of(driver, 'ausgabe_partner') == "100.00" assert content_of(driver, 'ausgabe_partner_soll') == "30.00" assert content_of(driver, 'ausgabe_partner_diff') == "70.00" driver.find_element_by_id('abrechnen').click() print('[', content_of(driver, 'abrechnung').replace('<br>', '\n'), ']') assert content_of(driver, 'abrechnung').replace( '<br>', '\n') == self.test_change_veraeltnis_abrechnung close_driver(driver)
def _define_kategorie(self, driver): kategorie_name = 'testkategorie' define_kategorie(driver, kategorie_name) self._look_for_kategorie_in_auswahl( driver, kategorie_name, 'http://localhost:5000/addausgabe/') self._look_for_kategorie_in_auswahl( driver, kategorie_name, 'http://localhost:5000/addeinnahme/') self._look_for_kategorie_in_auswahl( driver, kategorie_name, 'http://localhost:5000/adddauerauftrag/')
def test_should_showSuccessMessage(self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, 'Essen') driver.get('http://localhost:5000/import/') fill_element(driver, 'import', self._data) driver.find_element_by_name('btn_import').click() assert pagename(driver) == 'Export / Import' assert driver.find_element_by_id('message-box-content').get_attribute('innerHTML') == '1 Buchung wurde importiert' close_driver(driver)
def teste_vierteljaehrlich(self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, '2test_kategorie') self._add_dauerauftrag(driver, '2010-01-31', '2011-08-02', '2name', '2test_kategorie', 2, 'Ausgabe', rhythmus='vierteljaehrlich') driver.get('http://localhost:5000/uebersicht/') open_table_button = driver.find_element_by_id('open_2010.1') open_table_button.click() assert driver.find_element_by_id('item_0_name').get_attribute( 'innerHTML') == '2name' assert driver.find_element_by_id('item_0_kategorie').get_attribute( 'innerHTML') == '2test_kategorie' assert driver.find_element_by_id('item_0_datum').get_attribute( 'innerHTML') == '31.01.2010' assert driver.find_element_by_id('item_0_wert').get_attribute( 'innerHTML') == '-2,00' open_table_button = driver.find_element_by_id('open_2010.4') open_table_button.click() assert driver.find_element_by_id('item_1_name').get_attribute( 'innerHTML') == '2name' assert driver.find_element_by_id('item_1_kategorie').get_attribute( 'innerHTML') == '2test_kategorie' assert driver.find_element_by_id('item_1_datum').get_attribute( 'innerHTML') == '30.04.2010' assert driver.find_element_by_id('item_1_wert').get_attribute( 'innerHTML') == '-2,00' open_table_button = driver.find_element_by_id('open_2010.7') open_table_button.click() assert driver.find_element_by_id('item_2_name').get_attribute( 'innerHTML') == '2name' assert driver.find_element_by_id('item_2_kategorie').get_attribute( 'innerHTML') == '2test_kategorie' assert driver.find_element_by_id('item_2_datum').get_attribute( 'innerHTML') == '31.07.2010' assert driver.find_element_by_id('item_2_wert').get_attribute( 'innerHTML') == '-2,00' close_driver(driver)
def teste_uebersicht(self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, '0test_kategorie') self._add_dauerauftrag(driver, '2010-01-01', '2010-02-02', '0name', '0test_kategorie', '0.5', 'Einnahme') define_kategorie(driver, '1test_kategorie') self._add_dauerauftrag(driver, '2011-01-01', '2011-02-02', '1name', '1test_kategorie', 1, 'Ausgabe') define_kategorie(driver, '2test_kategorie') self._add_dauerauftrag(driver, '2012-01-01', '2012-02-02', '2name', '2test_kategorie', 2, 'Ausgabe') self._add_dauerauftrag(driver, '2013-01-01', '2013-02-02', '3name', '1test_kategorie', 3, 'Einnahme') driver.get('http://localhost:5000/dauerauftraguebersicht/') assert driver.find_element_by_id('item_2_id').get_attribute( 'innerHTML') == '2' assert driver.find_element_by_id('item_2_name').get_attribute( 'innerHTML') == '2name' assert driver.find_element_by_id('item_2_kategorie').get_attribute( 'innerHTML') == '2test_kategorie' assert driver.find_element_by_id('item_2_startdatum').get_attribute( 'innerHTML') == '01.01.2012' assert driver.find_element_by_id('item_2_endedatum').get_attribute( 'innerHTML') == '02.02.2012' assert driver.find_element_by_id('item_2_wert').get_attribute( 'innerHTML') == '-2.00' close_driver(driver)
def teste_edit_vorbelegung_einnahme(self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, '0test_kategorie') self._add_dauerauftrag(driver, '2010-01-01', '2010-02-02', '0name', '0test_kategorie', '0.5', 'Einnahme') define_kategorie(driver, '1test_kategorie') self._add_dauerauftrag(driver, '2011-01-01', '2011-02-02', '1name', '1test_kategorie', 1, 'Ausgabe') define_kategorie(driver, '2test_kategorie') self._add_dauerauftrag(driver, '2012-01-01', '2012-02-02', '2name', '2test_kategorie', 2, 'Ausgabe') self._add_dauerauftrag(driver, '2013-01-01', '2013-02-02', '3name', '1test_kategorie', 3, 'Einnahme') driver.get('http://localhost:5000/dauerauftraguebersicht/') edit_button = driver.find_element_by_id('edit_0') edit_button.click() assert driver.find_element_by_name('name').get_attribute( 'value') == '0name' assert get_selected_option(driver, 'kategorie_auswahl') == '0test_kategorie' assert get_selected_option(driver, 'typ_auswahl') == 'Einnahme' assert driver.find_element_by_name('startdatum').get_attribute( 'value') == '2010-01-01' assert driver.find_element_by_name('endedatum').get_attribute( 'value') == '2010-02-02' assert driver.find_element_by_name('wert').get_attribute( 'value') == '0,50' close_driver(driver)
def teste_vorbelegung_with_other(self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, '0test_kategorie') self._add_ausgabe(driver, '2010-01-01', '0name', '0test_kategorie', '0.5', 'Partner') define_kategorie(driver, '1test_kategorie') self._add_ausgabe(driver, '2011-01-01', '1name', '1test_kategorie', 1, 'test') define_kategorie(driver, '2test_kategorie') self._add_ausgabe(driver, '2012-01-01', '2name', '2test_kategorie', 2, 'test') self._add_ausgabe(driver, '2013-01-01', '3name', '1test_kategorie', 3, 'Partner') driver.get('http://localhost:5000/gemeinsameuebersicht/') edit_button = driver.find_element_by_id('edit_0') edit_button.click() assert driver.find_element_by_name('name').get_attribute( 'value') == '0name' assert get_selected_option(driver, 'kategorie_auswahl') == '0test_kategorie' assert get_selected_option(driver, 'person_auswahl') == 'Partner' assert driver.find_element_by_name('date').get_attribute( 'value') == '2010-01-01' assert driver.find_element_by_name('wert').get_attribute( 'value') == '0,50' close_driver(driver)
def teste_uebersicht(self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, '0test_kategorie') self._add_ausgabe(driver, '2010-01-01', '0name', '0test_kategorie', '0.5', 'Partner') define_kategorie(driver, '1test_kategorie') self._add_ausgabe(driver, '2011-01-01', '1name', '1test_kategorie', 1, 'test') define_kategorie(driver, '2test_kategorie') self._add_ausgabe(driver, '2012-01-01', '2name', '2test_kategorie', 2, 'test') self._add_ausgabe(driver, '2013-01-01', '3name', '1test_kategorie', 3, 'Partner') driver.get('http://localhost:5000/gemeinsameuebersicht/') assert driver.find_element_by_id('item_2_id').get_attribute( 'innerHTML') == '2' assert driver.find_element_by_id('item_2_name').get_attribute( 'innerHTML') == '2name' assert driver.find_element_by_id('item_2_kategorie').get_attribute( 'innerHTML') == '2test_kategorie' assert driver.find_element_by_id('item_2_datum').get_attribute( 'innerHTML') == '01.01.2012' assert driver.find_element_by_id('item_2_wert').get_attribute( 'innerHTML') == '-2,00' assert driver.find_element_by_id('item_2_person').get_attribute( 'innerHTML') == 'test' close_driver(driver)
def teste_edit_vorbelegung(self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, '0test_kategorie') self._add_ausgabe(driver, '2010-01-01', '0name', '0test_kategorie', '0.5') define_kategorie(driver, '1test_kategorie') self._add_ausgabe(driver, '2011-01-01', '1name', '1test_kategorie', 1) define_kategorie(driver, '2test_kategorie') self._add_ausgabe(driver, '2012-01-01', '2name', '2test_kategorie', 2) self._add_ausgabe(driver, '2013-01-01', '3name', '1test_kategorie', 3) driver.get('http://localhost:5000/uebersicht/') open_table_button = driver.find_element_by_id('open_2012.1') open_table_button.click() assert driver.find_element_by_id('item_2_id').get_attribute( 'innerHTML') == '2' assert driver.find_element_by_id('item_2_name').get_attribute( 'innerHTML') == '2name' assert driver.find_element_by_id('item_2_kategorie').get_attribute( 'innerHTML') == '2test_kategorie' assert driver.find_element_by_id('item_2_datum').get_attribute( 'innerHTML') == '01.01.2012' assert driver.find_element_by_id('item_2_wert').get_attribute( 'innerHTML') == '-2.00' edit_button = driver.find_element_by_id('edit_2') edit_button.click() assert driver.find_element_by_name('name').get_attribute( 'value') == '2name' assert get_selected_option(driver, 'kategorie_auswahl') == '2test_kategorie' assert driver.find_element_by_name('date').get_attribute( 'value') == '2012-01-01' assert driver.find_element_by_name('wert').get_attribute( 'value') == '2,00' close_driver(driver)
def test_set_limit_and_add_ausgleichsbuchungen_both( self, get_driver, close_driver): driver = get_driver() enter_test_mode(driver) define_kategorie(driver, '0test_kategorie') self._add_ausgabe(driver, '2010-01-01', '0name', '0test_kategorie', '100', 'Partner') define_kategorie(driver, '1test_kategorie') driver.get('http://localhost:5000/gemeinsamabrechnen/') assert content_of(driver, 'ausgabe_self') == "0.00" assert content_of(driver, 'ausgabe_self_soll') == "50.00" assert content_of(driver, 'ausgabe_self_diff') == "-50.00" assert content_of(driver, 'ausgabe_partner') == "100.00" assert content_of(driver, 'ausgabe_partner_soll') == "50.00" assert content_of(driver, 'ausgabe_partner_diff') == "50.00" driver.find_element_by_id('set_limit').click() select_option(driver, 'set_limit_fuer', 'test') fill_element_by_id(driver, 'set_limit_value', '30') driver.find_element_by_id('set_self_kategorie').click() select_option(driver, 'set_self_kategorie_value', '1test_kategorie') driver.find_element_by_id('set_other_kategorie').click() fill_element_by_id(driver, 'set_other_kategorie_value', 'test ausgleich') driver.find_element_by_id('abrechnung_aktualisieren').click() assert content_of(driver, 'ausgabe_self') == "0.00" assert content_of(driver, 'ausgabe_self_soll') == "30.00" assert content_of(driver, 'ausgabe_self_diff') == "-30.00" assert content_of(driver, 'ausgabe_partner') == "100.00" assert content_of(driver, 'ausgabe_partner_soll') == "70.00" assert content_of(driver, 'ausgabe_partner_diff') == "30.00" driver.find_element_by_id('abrechnen').click() assert content_of(driver, 'abrechnung').replace( '<br>', '\n') == self.set_limit_abrechnung_ausgleich driver.get('http://localhost:5000/uebersicht/') open_table_button = driver.find_element_by_id('open_2010.1') open_table_button.click() assert content_of(driver, 'item_0_id') == '0' assert content_of(driver, 'item_0_name') == '0name' assert content_of(driver, 'item_0_kategorie') == '0test_kategorie' assert content_of(driver, 'item_0_datum') == '01.01.2010' assert content_of(driver, 'item_0_wert') == '-50,00' assert content_of(driver, 'item_1_id') == '1' assert content_of(driver, 'item_1_name') == '1test_kategorie' assert content_of(driver, 'item_1_kategorie') == '1test_kategorie' assert content_of(driver, 'item_1_datum') == '01.01.2010' assert content_of(driver, 'item_1_wert') == '20,00' close_driver(driver)