Download tests/test_classifier.py from Ilnaa/SiPerak: direct link, hf CLI and curl.
- Browser
- Download file 1.49 kB
-
https://huggingface.co/spaces/Ilnaa/SiPerak/resolve/main/tests/test_classifier.py
- Command line
-
hf download hf://spaces/Ilnaa/SiPerak/tests/test_classifier.py
-
curl -L -o test_classifier.py https://huggingface.co/spaces/Ilnaa/SiPerak/resolve/main/tests/test_classifier.py
1.49 kB
| """Uji modul AI: deteksi spam & klasifikasi kategori (revisi UC-02 & UC-04).""" | |
| from src.constants import CATEGORIES, LABEL_LAYAK, LABEL_SPAM | |
| def test_spam_terdeteksi(classifier): | |
| res = classifier.predict("asdkjasd test test 123 wkwkwk iseng doang") | |
| assert res.is_spam is True | |
| assert res.spam_label == LABEL_SPAM | |
| assert res.kategori is None # spam tidak dikategorikan | |
| def test_laporan_layak_tidak_dianggap_spam(classifier): | |
| res = classifier.predict( | |
| "Jalan di depan rumah saya berlubang besar dan membahayakan pengendara" | |
| ) | |
| assert res.is_spam is False | |
| assert res.spam_label == LABEL_LAYAK | |
| assert res.kategori in CATEGORIES | |
| def test_klasifikasi_kategori_infrastruktur(classifier): | |
| res = classifier.predict("Lampu jalan mati dan jalan berlubang membahayakan pengendara") | |
| assert res.kategori == "Infrastruktur" | |
| assert 0.0 <= res.kategori_confidence <= 1.0 | |
| def test_klasifikasi_kategori_lingkungan(classifier): | |
| res = classifier.predict("Sampah menumpuk di sungai menyebabkan banjir dan bau busuk") | |
| assert res.kategori == "Lingkungan" | |
| def test_teks_kosong_dianggap_spam(classifier): | |
| res = classifier.predict(" ") | |
| assert res.is_spam is True | |
| assert res.kategori is None | |
| def test_confidence_dalam_rentang_valid(classifier): | |
| res = classifier.predict("Pelayanan KTP di kecamatan sangat lambat dan berbelit") | |
| assert 0.0 <= res.spam_confidence <= 1.0 | |
| assert 0.0 <= res.kategori_confidence <= 1.0 | |