def test_summarize_by(self): self.assertEqual( "mock_table | summarize count(stringField), my_count = count(stringField2) by boolField, bin(numField, 1), time_range = bin(dateField, 10)", Query(t).summarize(f.count(t.stringField), my_count=f.count(t.stringField2)).by( t.boolField, f.bin(t.numField, 1), time_range=f.bin(t.dateField, 10)).render(), )
def test_bin(self): self.assertEqual( " | summarize avg(numField) by bin(numField2, 0.1)", Query().summarize(f.avg(t.numField)).by(f.bin(t.numField2, 0.1)).render() ) self.assertEqual( " | summarize avg(numField2) by bin(dateField, time(0.12:0:0.0))", Query().summarize(f.avg(t.numField2)).by(f.bin(t.dateField, timedelta(0.5))).render() ) self.assertEqual( " | summarize avg(numField2) by bin(timespanField, time(0.12:0:0.0))", Query().summarize(f.avg(t.numField2)).by(f.bin(t.timespanField, timedelta(0.5))).render() )
def test_summarize_by_with_shuffle_hint_specific_key(self): self.assertEqual( "mock_table | summarize hint.shufflekey = boolField count(stringField) by boolField, time_range = bin(dateField, time(0.0:0:10.0))", (Query(t).summarize(f.count(t.stringField)).by( t.boolField, time_range=f.bin(t.dateField, timedelta( seconds=10))).shuffle_key(t.boolField).render()))
def test_nesting(self): self.assertEqual( " | summarize active_days = dcount(bin(dateField, time(1.0:0:0.0)))", Query().summarize(active_days=f.dcount(f.bin(t.dateField, timedelta(1)))).render() )