Beispiel #1
0
    def test_clean_multichartseries_non_number_is_prompting_error(self):
        context = self._render_context(input_table=arrow_table({
            "A": ["a"],
            "B":
            pa.array([datetime.now()], pa.timestamp("ns"))
        }))
        value = [
            {
                "column": "A",
                "color": "#aaaaaa"
            },
            {
                "column": "B",
                "color": "#cccccc"
            },
        ]
        with self.assertRaises(PromptingError) as cm:
            clean_value(ParamDType.Multichartseries(), value, context)

        self.assertEqual(
            cm.exception.errors,
            [
                PromptingError.WrongColumnType(["A"], "text",
                                               frozenset({"number"})),
                PromptingError.WrongColumnType(["B"], "datetime",
                                               frozenset({"number"})),
            ],
        )
Beispiel #2
0
 def test_clean_multichartseries_missing_is_removed(self):
     context = self._render_context(input_table=arrow_table({"A": [1], "B": [1]}))
     value = [
         {"column": "A", "color": "#aaaaaa"},
         {"column": "C", "color": "#cccccc"},
     ]
     result = clean_value(ParamDType.Multichartseries(), value, context)
     self.assertEqual(result, [{"column": "A", "color": "#aaaaaa"}])
 def test_clean_multichartseries_is_error(self):
     with self.assertRaisesRegex(RuntimeError,
                                 "Unsupported: fetch multichartseries"):
         clean_value(ParamDType.Multichartseries(), [], None)