def test_autentikasi_tanpa_argumen_sama_dengan_bantuan(monkeypatch, capsys): monkeypatch.setattr(_sys, "exit", lambda x: None) monkeypatch.setattr(_sys, "argv", ["kbbi-autentikasi"]) kbbi.autentikasi(["--bantuan"]) tangkap = capsys.readouterr() bantuan = tangkap.out hasil = kbbi.autentikasi() tangkap = capsys.readouterr() assert tangkap.out == bantuan assert hasil == 0
def test_autentikasi_gagal(autentikasi_gagal, capsys): hasil = kbbi.autentikasi(["*****@*****.**", "sandi_saya"]) tangkap = capsys.readouterr() assert tangkap.out == ( "Gagal melakukan autentikasi dengan alamat posel dan sandi " "yang diberikan.\n") assert hasil == 1
def test_autentikasi_sukses(autentikasi_sukses, mock_lokasi_kuki, capsys): hasil = kbbi.autentikasi(["*****@*****.**", "p4sti_sukses"]) tangkap = capsys.readouterr() assert tangkap.out == ( "Autentikasi berhasil dan kuki telah disimpan di kukifix.json.\n" "Kuki akan otomatis digunakan pada penggunaan KBBI berikutnya.\n") assert hasil == 0 assert (mock_lokasi_kuki.read_text() == '{".AspNet.ApplicationCookie": "mockcookie"}') mock_lokasi_kuki.unlink()
def test_bersihkan_kuki_tidak_ada(mock_lokasi_kuki, tanpa_kuki, capsys): hasil = kbbi.autentikasi(["--bersihkan"]) tangkap = capsys.readouterr() assert tangkap.out == "Kuki tidak ditemukan pada kukifix.json!\n" assert hasil == 1
def test_bersihkan_kuki_ada(kuki, capsys): hasil = kbbi.autentikasi(["--bersihkan"]) tangkap = capsys.readouterr() assert tangkap.out == "Kuki kukifix.json berhasil dihapus.\n" assert hasil == 0