Skip to content

Commit b77252e

Browse files
committed
new test cases for TestExtractStateInterval
1 parent e171e62 commit b77252e

File tree

2 files changed

+217
-32
lines changed

2 files changed

+217
-32
lines changed

python/tests/tsdf_tests.py

+49-15
Original file line numberDiff line numberDiff line change
@@ -455,7 +455,7 @@ def test_upsample(self):
455455
class ExtractStateIntervalsTest(SparkTest):
456456
"""Test of finding time ranges for metrics with constant state."""
457457

458-
def test_eq_0_extractStateIntervals(self):
458+
def test_eq_0(self):
459459
# construct dataframes
460460
input_tsdf: TSDF = self.get_data_as_tsdf("input")
461461
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -472,7 +472,7 @@ def test_eq_0_extractStateIntervals(self):
472472
self.assertDataFramesEqual(intervals_eq_1_df, expected_df)
473473
self.assertDataFramesEqual(intervals_eq_2_df, expected_df)
474474

475-
def test_eq_1_extractStateIntervals(self):
475+
def test_eq_1(self):
476476
# construct dataframes
477477
input_tsdf: TSDF = self.get_data_as_tsdf("input")
478478
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -489,7 +489,7 @@ def test_eq_1_extractStateIntervals(self):
489489
self.assertDataFramesEqual(intervals_eq_1_df, expected_df)
490490
self.assertDataFramesEqual(intervals_eq_2_df, expected_df)
491491

492-
def test_ne_0_extractStateIntervals(self):
492+
def test_ne_0(self):
493493
# construct dataframes
494494
input_tsdf: TSDF = self.get_data_as_tsdf("input")
495495
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -506,7 +506,7 @@ def test_ne_0_extractStateIntervals(self):
506506
self.assertDataFramesEqual(intervals_ne_0_df, expected_df)
507507
self.assertDataFramesEqual(intervals_ne_1_df, expected_df)
508508

509-
def test_ne_1_extractStateIntervals(self):
509+
def test_ne_1(self):
510510
# construct dataframes
511511
input_tsdf: TSDF = self.get_data_as_tsdf("input")
512512
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -523,7 +523,7 @@ def test_ne_1_extractStateIntervals(self):
523523
self.assertDataFramesEqual(intervals_ne_0_df, expected_df)
524524
self.assertDataFramesEqual(intervals_ne_1_df, expected_df)
525525

526-
def test_gt_0_extractStateIntervals(self):
526+
def test_gt_0(self):
527527
# construct dataframes
528528
input_tsdf: TSDF = self.get_data_as_tsdf("input")
529529
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -535,7 +535,7 @@ def test_gt_0_extractStateIntervals(self):
535535

536536
self.assertDataFramesEqual(intervals_gt_df, expected_df)
537537

538-
def test_gt_1_extractStateIntervals(self):
538+
def test_gt_1(self):
539539
# construct dataframes
540540
input_tsdf: TSDF = self.get_data_as_tsdf("input")
541541
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -547,7 +547,7 @@ def test_gt_1_extractStateIntervals(self):
547547

548548
self.assertDataFramesEqual(intervals_gt_df, expected_df)
549549

550-
def test_lt_0_extractStateIntervals(self):
550+
def test_lt_0(self):
551551
# construct dataframes
552552
input_tsdf: TSDF = self.get_data_as_tsdf("input")
553553
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -560,7 +560,7 @@ def test_lt_0_extractStateIntervals(self):
560560
# test extractStateIntervals_tsdf summary
561561
self.assertDataFramesEqual(intervals_lt_df, expected_df)
562562

563-
def test_lt_1_extractStateIntervals(self):
563+
def test_lt_1(self):
564564
# construct dataframes
565565
input_tsdf: TSDF = self.get_data_as_tsdf("input")
566566
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -573,7 +573,7 @@ def test_lt_1_extractStateIntervals(self):
573573
# test intervals_tsdf summary
574574
self.assertDataFramesEqual(intervals_lt_df, expected_df)
575575

576-
def test_gte_0_extractStateIntervals(self):
576+
def test_gte_0(self):
577577
# construct dataframes
578578
input_tsdf: TSDF = self.get_data_as_tsdf("input")
579579
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -585,7 +585,7 @@ def test_gte_0_extractStateIntervals(self):
585585

586586
self.assertDataFramesEqual(intervals_gt_df, expected_df)
587587

588-
def test_gte_1_extractStateIntervals(self):
588+
def test_gte_1(self):
589589
# construct dataframes
590590
input_tsdf: TSDF = self.get_data_as_tsdf("input")
591591
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -597,7 +597,7 @@ def test_gte_1_extractStateIntervals(self):
597597

598598
self.assertDataFramesEqual(intervals_gt_df, expected_df)
599599

600-
def test_lte_0_extractStateIntervals(self):
600+
def test_lte_0(self):
601601
# construct dataframes
602602
input_tsdf: TSDF = self.get_data_as_tsdf("input")
603603
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -610,7 +610,7 @@ def test_lte_0_extractStateIntervals(self):
610610
# test intervals_tsdf summary
611611
self.assertDataFramesEqual(intervals_lte_df, expected_df)
612612

613-
def test_lte_1_extractStateIntervals(self):
613+
def test_lte_1(self):
614614
# construct dataframes
615615
input_tsdf: TSDF = self.get_data_as_tsdf("input")
616616
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -623,7 +623,7 @@ def test_lte_1_extractStateIntervals(self):
623623
# test extractStateIntervals_tsdf summary
624624
self.assertDataFramesEqual(intervals_lte_df, expected_df)
625625

626-
def test_threshold_fn_extractStateIntervals(self):
626+
def test_threshold_fn(self):
627627
# construct dataframes
628628
input_tsdf: TSDF = self.get_data_as_tsdf("input")
629629
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -640,7 +640,7 @@ def threshold_fn(a: Column, b: Column) -> Column:
640640
# test extractStateIntervals_tsdf summary
641641
self.assertDataFramesEqual(extracted_intervals_df, expected_df)
642642

643-
def test_null_safe_eq_0_extractStateIntervals(self):
643+
def test_null_safe_eq_0(self):
644644
# construct dataframes
645645
input_tsdf: TSDF = self.get_data_as_tsdf("input")
646646
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -652,7 +652,7 @@ def test_null_safe_eq_0_extractStateIntervals(self):
652652
# test extractStateIntervals_tsdf summary
653653
self.assertDataFramesEqual(intervals_eq_df, expected_df)
654654

655-
def test_null_safe_eq_1_extractStateIntervals(self):
655+
def test_null_safe_eq_1(self):
656656
# construct dataframes
657657
input_tsdf: TSDF = self.get_data_as_tsdf("input")
658658
expected_df: DataFrame = self.get_data_as_sdf("expected")
@@ -664,6 +664,40 @@ def test_null_safe_eq_1_extractStateIntervals(self):
664664
# test extractStateIntervals_tsdf summary
665665
self.assertDataFramesEqual(intervals_eq_df, expected_df)
666666

667+
def test_adjacent_intervals(self):
668+
# construct dataframes
669+
input_tsdf: TSDF = self.get_data_as_tsdf("input")
670+
expected_df: DataFrame = self.get_data_as_sdf("expected")
671+
672+
intervals_eq_df: DataFrame = input_tsdf.extractStateIntervals(
673+
"metric_1", "metric_2", "metric_3"
674+
)
675+
676+
# test extractStateIntervals_tsdf summary
677+
self.assertDataFramesEqual(intervals_eq_df, expected_df)
678+
679+
def test_invalid_state_definition_str(self):
680+
# construct dataframes
681+
input_tsdf: TSDF = self.get_data_as_tsdf("input")
682+
683+
try:
684+
input_tsdf.extractStateIntervals(
685+
"metric_1", "metric_2", "metric_3", state_definition="N/A"
686+
)
687+
except ValueError as e:
688+
self.assertEqual(type(e), ValueError)
689+
690+
def test_invalid_state_definition_type(self):
691+
# construct dataframes
692+
input_tsdf: TSDF = self.get_data_as_tsdf("input")
693+
694+
try:
695+
input_tsdf.extractStateIntervals(
696+
"metric_1", "metric_2", "metric_3", state_definition=0
697+
)
698+
except TypeError as e:
699+
self.assertEqual(type(e), TypeError)
700+
667701

668702
# MAIN
669703
if __name__ == "__main__":

0 commit comments

Comments
 (0)