fix day 0 insight main dashboard page
This commit is contained in:
1 parent
e1987d6999
commit
bc2b260065
6 files changed
+165
-36
No files matched your search
@@ -211,3 +211,38 @@ class FeedBalanceGradingTests(SimpleTestCase):
|
||||
self.assertEqual(feed["status"], "unknown")
|
||||
self.assertIn("tidak tersedia", feed["message"].lower())
|
||||
|
||||
|
||||
class DayZeroInsightTests(SimpleTestCase):
|
||||
def test_day_zero_grading_dashboard(self):
|
||||
ctx = {
|
||||
"hari_ke": 0,
|
||||
"bobot_avg_gram": 32.0,
|
||||
"persen_hidup": 99.8,
|
||||
"doc_in_ekor": 10000,
|
||||
"kematian_kumulatif_ekor": 20,
|
||||
"fcr_terakhir": None,
|
||||
}
|
||||
graded = grade_context(ctx, "dashboard")
|
||||
self.assertEqual(graded["hari_ke"], 0)
|
||||
analyses = graded["analyses"]
|
||||
self.assertIn("bw", analyses)
|
||||
self.assertIn("fcr", analyses)
|
||||
self.assertIn("mortality", analyses)
|
||||
# BW 32g is baseline DOC weight -> ok
|
||||
self.assertEqual(analyses["bw"]["status"], "ok")
|
||||
self.assertEqual(analyses["bw"]["standard"], 32.0)
|
||||
self.assertIn("bobot awal doc", analyses["bw"]["message"].lower())
|
||||
# FCR not applicable on day 0 -> ok with explanatory message
|
||||
self.assertEqual(analyses["fcr"]["status"], "ok")
|
||||
self.assertIn("belum dihitung", analyses["fcr"]["message"].lower())
|
||||
# Mortality 0.20% vs std 0.40% -> ok
|
||||
self.assertEqual(analyses["mortality"]["status"], "ok")
|
||||
|
||||
def test_day_zero_standard_block_generation(self):
|
||||
ctx = {"hari_ke": 0}
|
||||
std_block = cp707.build_cp707_standard_block(ctx)
|
||||
self.assertIn("STANDAR CP 707 UNTUK HARI INI", std_block)
|
||||
self.assertIn("Bobot badan standar hari ke-0: Mengikuti bobot awal DOC masuk", std_block)
|
||||
self.assertIn("Mortalitas kumulatif standar hari ke-0: 0.4 %", std_block)
|
||||
|
||||
|
||||
Reference in new issue
Block a user