
8 changed files with 717 additions and 204 deletions
@ -1,141 +0,0 @@
@@ -1,141 +0,0 @@
|
||||
def test_add_order(testapp, login_as): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert "Eppis" in response |
||||
assert "Ethanol" in response |
||||
assert "NaCl" in response |
||||
assert "Spritzen" in response |
||||
assert "Aceton" not in response |
||||
|
||||
response = testapp.get("/orders/add/") |
||||
form = response.forms[1] |
||||
form["cas_description"] = "Aceton" |
||||
form["category"] = "SOLVENT" |
||||
form["catalog_nr"] = "567" |
||||
form["vendor"] = "Carl Roth" |
||||
form["package_size"] = "25 l" |
||||
form["quantity"] = "5" |
||||
form["account"] = "DFG" |
||||
form["comment"] = "Ein Kommentar!" |
||||
form.fields["amount"][0].value = "5.67" |
||||
form.fields["amount"][1].value = "5.67" |
||||
form.fields["currency"][0].value = "USD" |
||||
form.fields["currency"][1].value = "USD" |
||||
form.submit("Place_Order") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "My Orders" in response |
||||
assert "Eppis" in response |
||||
assert "Ethanol" in response |
||||
assert "NaCl" in response |
||||
assert "Spritzen" in response |
||||
assert "Aceton" in response |
||||
|
||||
response = testapp.get("/orders/5/view/") |
||||
assert "Aceton" in response |
||||
assert "Solvent" in response |
||||
assert "567" in response |
||||
assert "Carl Roth" in response |
||||
assert "25 l" in response |
||||
assert "DFG" in response |
||||
assert "Ein Kommentar!" in response |
||||
assert "5.67" in response |
||||
assert "28.35" in response |
||||
|
||||
|
||||
def test_view_order(testapp, login_as): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
|
||||
response = testapp.get("/orders/3/view/") |
||||
assert "Eppis" in response |
||||
assert "345" in response |
||||
assert "VWR" in response |
||||
assert "Biolab" in response |
||||
assert "3 St" in response |
||||
assert "34.50" in response |
||||
assert "3" in response |
||||
assert "USD" in response |
||||
assert "103.50" in response |
||||
assert "Toto" in response |
||||
assert "auf der Seite" in response |
||||
assert 'href="http://www.example.com/foo"' in response |
||||
assert ">http://www.example.com/foo</a>" in response |
||||
assert "open" in response |
||||
assert "completed" in response |
||||
assert "TestAdmin" in response |
||||
assert "TestUser" in response |
||||
|
||||
|
||||
def test_edit_order_ok(testapp, login_as): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
|
||||
response = testapp.get("/orders/3/edit/") |
||||
form = response.forms[1] |
||||
form["cas_description"] = "Aceton" |
||||
form["category"] = "SOLVENT" |
||||
form["catalog_nr"] = "567" |
||||
form["vendor"] = "Carl Roth" |
||||
form["package_size"] = "25 l" |
||||
form["quantity"] = "5" |
||||
form["account"] = "DFG" |
||||
form["comment"] = "Ein Kommentar!" |
||||
form.fields["amount"][0].value = "5.67" |
||||
form.fields["amount"][1].value = "5.67" |
||||
form.fields["currency"][0].value = "USD" |
||||
form.fields["currency"][1].value = "USD" |
||||
form.submit("Save_Changes") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "My Orders" in response |
||||
assert "Eppis" not in response |
||||
assert "Ethanol" in response |
||||
assert "NaCl" in response |
||||
assert "Spritzen" in response |
||||
assert "Aceton" in response |
||||
|
||||
response = testapp.get("/orders/3/view/") |
||||
assert "Aceton" in response |
||||
assert "Solvent" in response |
||||
assert "567" in response |
||||
assert "Carl Roth" in response |
||||
assert "25 l" in response |
||||
assert "DFG" in response |
||||
assert "Ein Kommentar!" in response |
||||
assert "5.67" in response |
||||
assert "28.35" in response |
||||
|
||||
|
||||
def test_delete_order(testapp, login_as): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert "Eppis" in response |
||||
assert "Ethanol" in response |
||||
assert "NaCl" in response |
||||
assert "/orders/4/edit" in response |
||||
|
||||
response = testapp.get("/orders/4/delete") |
||||
form = response.forms[1] |
||||
form["confirmation"].checked = True |
||||
form.submit("delete") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "has been deleted" in response |
||||
assert "My Orders" in response |
||||
assert "Eppis" in response |
||||
assert "Ethanol" in response |
||||
assert "NaCl" in response |
||||
assert "/orders/4/edit" not in response |
@ -0,0 +1,438 @@
@@ -0,0 +1,438 @@
|
||||
def test_view_order(testapp, login_as): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
|
||||
response = testapp.get("/orders/3/view/") |
||||
assert "Eppis" in response |
||||
assert "345" in response |
||||
assert "VWR" in response |
||||
assert "Biolab" in response |
||||
assert "3 St" in response |
||||
assert "34.50" in response |
||||
assert "3" in response |
||||
assert "USD" in response |
||||
assert "103.50" in response |
||||
assert "Toto" in response |
||||
assert "auf der Seite" in response |
||||
assert 'href="http://www.example.com/foo"' in response |
||||
assert ">http://www.example.com/foo</a>" in response |
||||
assert "open" in response |
||||
assert "completed" in response |
||||
assert "TestAdmin" in response |
||||
assert "TestUser" in response |
||||
|
||||
|
||||
def test_add_order_ok(testapp, login_as, contains): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert contains( |
||||
response, |
||||
Eppis=True, |
||||
Ethanol=True, |
||||
NaCl=True, |
||||
Spritzen=True, |
||||
Aceton=False, |
||||
) |
||||
|
||||
response = testapp.get("/orders/add/") |
||||
form = response.forms[1] |
||||
form["cas_description"] = "Aceton" |
||||
form["category"] = "SOLVENT" |
||||
form["catalog_nr"] = "567" |
||||
form["vendor"] = "Carl Roth" |
||||
form["package_size"] = "25 l" |
||||
form["quantity"] = "5" |
||||
form["account"] = "DFG" |
||||
form["comment"] = "Ein Kommentar!" |
||||
form.fields["amount"][0].value = "5.67" |
||||
form.fields["amount"][1].value = "5.67" |
||||
form.fields["currency"][0].value = "USD" |
||||
form.fields["currency"][1].value = "USD" |
||||
form.submit("Place_Order") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "My Orders" in response |
||||
assert contains( |
||||
response, |
||||
Eppis=True, |
||||
Ethanol=True, |
||||
NaCl=True, |
||||
Spritzen=True, |
||||
Aceton=True, |
||||
) |
||||
|
||||
response = testapp.get("/orders/5/view/") |
||||
assert "Aceton" in response |
||||
assert "Solvent" in response |
||||
assert "567" in response |
||||
assert "Carl Roth" in response |
||||
assert "25 l" in response |
||||
assert "DFG" in response |
||||
assert "Ein Kommentar!" in response |
||||
assert "5.67" in response |
||||
assert "28.35" in response |
||||
|
||||
|
||||
def test_add_order_validation_error(testapp, login_as, contains): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert contains( |
||||
response, |
||||
Eppis=True, |
||||
Ethanol=True, |
||||
NaCl=True, |
||||
Spritzen=True, |
||||
Aceton=False, |
||||
) |
||||
|
||||
response = testapp.get("/orders/add/") |
||||
form = response.forms[1] |
||||
response = form.submit("Place_Order") |
||||
assert "There was a problem with your submission" in response |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert contains( |
||||
response, |
||||
Eppis=True, |
||||
Ethanol=True, |
||||
NaCl=True, |
||||
Spritzen=True, |
||||
Aceton=False, |
||||
) |
||||
|
||||
|
||||
def test_add_order_cancel(testapp, login_as, contains): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert contains( |
||||
response, |
||||
Eppis=True, |
||||
Ethanol=True, |
||||
NaCl=True, |
||||
Spritzen=True, |
||||
Aceton=False, |
||||
) |
||||
|
||||
response = testapp.get("/orders/add/") |
||||
form = response.forms[1] |
||||
form["cas_description"] = "Aceton" |
||||
form["category"] = "SOLVENT" |
||||
form["catalog_nr"] = "567" |
||||
form["vendor"] = "Carl Roth" |
||||
form["package_size"] = "25 l" |
||||
form["quantity"] = "5" |
||||
form["account"] = "DFG" |
||||
form["comment"] = "Ein Kommentar!" |
||||
form.fields["amount"][0].value = "5.67" |
||||
form.fields["amount"][1].value = "5.67" |
||||
form.fields["currency"][0].value = "USD" |
||||
form.fields["currency"][1].value = "USD" |
||||
form.submit("cancel") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "My Orders" in response |
||||
assert contains( |
||||
response, |
||||
Eppis=True, |
||||
Ethanol=True, |
||||
NaCl=True, |
||||
Spritzen=True, |
||||
Aceton=False, |
||||
) |
||||
|
||||
|
||||
def test_edit_order_ok(testapp, login_as, contains, parse_latest_mail): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert contains( |
||||
response, |
||||
Eppis=True, |
||||
Ethanol=True, |
||||
NaCl=True, |
||||
Spritzen=True, |
||||
Aceton=False, |
||||
) |
||||
|
||||
response = testapp.get("/orders/3/edit/") |
||||
form = response.forms[1] |
||||
form["cas_description"] = "Aceton" |
||||
form["status"].value = "HOLD" |
||||
form["category"].value = "SOLVENT" |
||||
form["catalog_nr"] = "567" |
||||
form["vendor"] = "Carl Roth" |
||||
form["package_size"] = "25 l" |
||||
form["quantity"] = "5" |
||||
form["account"] = "DFG" |
||||
form["comment"] = "Ein Kommentar!" |
||||
form.fields["amount"][0].value = "5.67" |
||||
form.fields["amount"][1].value = "5.67" |
||||
form.fields["currency"][0].value = "USD" |
||||
form.fields["currency"][1].value = "USD" |
||||
form.submit("Save_Changes") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "My Orders" in response |
||||
assert contains( |
||||
response, |
||||
Eppis=False, |
||||
Ethanol=True, |
||||
NaCl=True, |
||||
Spritzen=True, |
||||
Aceton=True, |
||||
) |
||||
|
||||
response = testapp.get("/orders/3/view/") |
||||
assert "Aceton" in response |
||||
assert "hold" in response |
||||
assert "Solvent" in response |
||||
assert "567" in response |
||||
assert "Carl Roth" in response |
||||
assert "25 l" in response |
||||
assert "DFG" in response |
||||
assert "Ein Kommentar!" in response |
||||
assert "5.67" in response |
||||
assert "28.35" in response |
||||
|
||||
parsed = parse_latest_mail() |
||||
assert "The status of one or more of your orders" in parsed.body |
||||
assert "Aceton" in parsed.body |
||||
assert "- new status: Hold" in parsed.body |
||||
|
||||
|
||||
def test_edit_order_form_error(testapp, login_as, contains): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
|
||||
response = testapp.get("/orders/3/edit/") |
||||
form = response.forms[1] |
||||
form["cas_description"] = "" |
||||
form["category"] = "SOLVENT" |
||||
form["catalog_nr"] = "567" |
||||
form["vendor"] = "Carl Roth" |
||||
form["package_size"] = "25 l" |
||||
form["quantity"] = "5" |
||||
form["account"] = "DFG" |
||||
form["comment"] = "Ein Kommentar!" |
||||
form.fields["amount"][0].value = "5.67" |
||||
form.fields["amount"][1].value = "5.67" |
||||
form.fields["currency"][0].value = "USD" |
||||
form.fields["currency"][1].value = "USD" |
||||
|
||||
response = form.submit("Save_Changes") |
||||
assert "There was a problem with your submission" in response |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "My Orders" in response |
||||
assert contains( |
||||
response, |
||||
Eppis=True, |
||||
Ethanol=True, |
||||
NaCl=True, |
||||
Spritzen=True, |
||||
Aceton=False, |
||||
) |
||||
|
||||
|
||||
def test_edit_order_cancel(testapp, login_as, contains): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
|
||||
response = testapp.get("/orders/3/edit/") |
||||
form = response.forms[1] |
||||
form["cas_description"] = "Aceton" |
||||
form["category"] = "SOLVENT" |
||||
form["catalog_nr"] = "567" |
||||
form["vendor"] = "Carl Roth" |
||||
form["package_size"] = "25 l" |
||||
form["quantity"] = "5" |
||||
form["account"] = "DFG" |
||||
form["comment"] = "Ein Kommentar!" |
||||
form.fields["amount"][0].value = "5.67" |
||||
form.fields["amount"][1].value = "5.67" |
||||
form.fields["currency"][0].value = "USD" |
||||
form.fields["currency"][1].value = "USD" |
||||
form.submit("cancel") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "My Orders" in response |
||||
assert contains( |
||||
response, |
||||
Eppis=True, |
||||
Ethanol=True, |
||||
NaCl=True, |
||||
Spritzen=True, |
||||
Aceton=False, |
||||
) |
||||
|
||||
|
||||
def test_delete_order_ok(testapp, login_as, contains): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert contains(response, Eppis=True, Ethanol=True, NaCl=True) |
||||
# don't check for "Spritzen", the term will apear in the flash message |
||||
# check for edit link |
||||
assert "/orders/4/edit" in response |
||||
|
||||
response = testapp.get("/orders/4/delete") |
||||
form = response.forms[1] |
||||
form["confirmation"].checked = True |
||||
form.submit("delete") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "has been deleted" in response |
||||
assert "My Orders" in response |
||||
assert contains(response, Eppis=True, Ethanol=True, NaCl=True) |
||||
# don't check for "Spritzen", the term will apear in the flash message |
||||
# check for edit link |
||||
assert "/orders/4/edit" not in response |
||||
|
||||
|
||||
def test_delete_order_cancel(testapp, login_as, contains): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert contains(response, Eppis=True, Ethanol=True, NaCl=True) |
||||
# don't check for "Spritzen", the term will apear in the flash message |
||||
# check for edit link |
||||
assert "/orders/4/edit" in response |
||||
|
||||
response = testapp.get("/orders/4/delete") |
||||
form = response.forms[1] |
||||
form["confirmation"].checked = True |
||||
form.submit("cancel") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "has been deleted" not in response |
||||
assert "My Orders" in response |
||||
assert contains(response, Eppis=True, Ethanol=True, NaCl=True) |
||||
# don't check for "Spritzen", the term will apear in the flash message |
||||
# check for edit link |
||||
assert "/orders/4/edit" in response |
||||
|
||||
|
||||
def test_delete_order_no_confirm(testapp, login_as, contains): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert contains(response, Eppis=True, Ethanol=True, NaCl=True) |
||||
# don't check for "Spritzen", the term will apear in the flash message |
||||
# check for edit link |
||||
assert "/orders/4/edit" in response |
||||
|
||||
response = testapp.get("/orders/4/delete") |
||||
form = response.forms[1] |
||||
form["confirmation"].checked = False |
||||
form.submit("delete") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "has been deleted" not in response |
||||
assert "My Orders" in response |
||||
assert contains(response, Eppis=True, Ethanol=True, NaCl=True) |
||||
# don't check for "Spritzen", the term will apear in the flash message |
||||
# check for edit link |
||||
assert "/orders/4/edit" in response |
||||
|
||||
|
||||
def test_reorder_ok(testapp, login_as, contains): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert "1138,50" not in response |
||||
assert "/orders/5/edit" not in response |
||||
|
||||
response = testapp.get("/orders/3/reorder/") |
||||
form = response.forms[1] |
||||
form["quantity"] = "33" |
||||
form.submit("Place_Order") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "has been placed." in response |
||||
assert "1138,50" in response |
||||
assert "/orders/5/edit" in response |
||||
|
||||
response = testapp.get("/orders?status=open", status=200) |
||||
assert contains( |
||||
response, Eppis=True, Ethanol=False, NaCl=False, Spritzen=True |
||||
) |
||||
|
||||
response = testapp.get("/orders?status=completed", status=200) |
||||
assert contains( |
||||
response, Eppis=True, Ethanol=True, NaCl=False, Spritzen=False |
||||
) |
||||
|
||||
|
||||
def test_reorder_cancel(testapp, login_as, contains): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert "1138,50" not in response |
||||
assert "/orders/5/edit" not in response |
||||
|
||||
response = testapp.get("/orders/3/reorder/") |
||||
form = response.forms[1] |
||||
form["quantity"] = "33" |
||||
form.submit("cancel") |
||||
|
||||
response = testapp.get("/orders/") |
||||
assert "has been placed." not in response |
||||
assert "1138,50" not in response |
||||
assert "/orders/5/edit" not in response |
||||
|
||||
response = testapp.get("/orders?status=open", status=200) |
||||
assert contains( |
||||
response, Eppis=False, Ethanol=False, NaCl=False, Spritzen=True |
||||
) |
||||
|
||||
|
||||
def test_reorder_form_error(testapp, login_as, contains): |
||||
response = testapp.get("/", status=302).follow(status=200) |
||||
assert "Please Log In" in response |
||||
|
||||
response = login_as("TestAdmin", "jane").follow(status=200) |
||||
assert "My Orders" in response |
||||
assert "1138,50" not in response |
||||
assert "/orders/5/edit" not in response |
||||
|
||||
response = testapp.get("/orders/3/reorder/") |
||||
form = response.forms[1] |
||||
form["quantity"] = "" |
||||
|
||||
response = form.submit("Place_Order") |
||||
assert "There was a problem with your submission" in response |
||||
|
||||
response = testapp.get("/orders?status=open", status=200) |
||||
assert contains( |
||||
response, Eppis=False, Ethanol=False, NaCl=False, Spritzen=True |
||||
) |
Loading…
Reference in new issue