def test_node_evaluate(self): n_low = TreeNode(w=-0.1434) n_hi = TreeNode(w=-0.456) n_week = TreeNode(factor="day_of_week", value=3, lo_branch=n_low, hi_branch=n_hi) n_bigamount = TreeNode(w=0.2) n_root = TreeNode(factor="amount", value=5, lo_branch=n_week, hi_branch=n_bigamount) data1 = {'amount': 2, 'day_of_week': 2} data2 = {'amount': 8, 'day_of_week': 2} self.assertEqual(-0.1434, n_root.evaluate(data1)) self.assertEqual(0.2, n_root.evaluate(data2))