@@ -2641,6 +2641,36 @@ def test_severity_score_flag_off(self, mock_get_severity_score: MagicMock):
2641
2641
mock_get_severity_score .assert_not_called ()
2642
2642
assert event .group and "severity" not in event .group .get_event_metadata ()
2643
2643
2644
+ @patch ("sentry.event_manager._get_severity_score" , return_value = None )
2645
+ def test_no_severity_score_assigned_when_value_is_None (
2646
+ self , mock_get_severity_score : MagicMock
2647
+ ):
2648
+ with self .feature ({"projects:first-event-severity-calculation" : True }):
2649
+ manager = EventManager (
2650
+ make_event (
2651
+ exception = {"values" : [{"type" : "NopeError" , "value" : "Nopey McNopeface" }]}
2652
+ )
2653
+ )
2654
+ event = manager .save (self .project .id )
2655
+
2656
+ mock_get_severity_score .assert_called ()
2657
+ assert event .group and "severity" not in event .group .get_event_metadata ()
2658
+
2659
+ @patch ("sentry.event_manager._get_severity_score" , return_value = 0 )
2660
+ def test_severity_score_still_assigned_when_value_is_zero (
2661
+ self , mock_get_severity_score : MagicMock
2662
+ ):
2663
+ with self .feature ({"projects:first-event-severity-calculation" : True }):
2664
+ manager = EventManager (
2665
+ make_event (
2666
+ exception = {"values" : [{"type" : "NopeError" , "value" : "Nopey McNopeface" }]}
2667
+ )
2668
+ )
2669
+ event = manager .save (self .project .id )
2670
+
2671
+ mock_get_severity_score .assert_called ()
2672
+ assert event .group and event .group .get_event_metadata ().get ("severity" ) == 0
2673
+
2644
2674
2645
2675
class AutoAssociateCommitTest (TestCase , EventManagerTestMixin ):
2646
2676
def setUp (self ):
@@ -3717,6 +3747,29 @@ def test_logs_error_on_no_severity_score_when_enabled(
3717
3747
},
3718
3748
)
3719
3749
3750
+ @patch ("sentry.event_manager.logger.error" )
3751
+ @patch ("sentry.event_manager._get_severity_score" , return_value = 0 )
3752
+ def test_no_error_logged_on_zero_severity_score_when_enabled (
3753
+ self ,
3754
+ mock_get_severity_score : MagicMock ,
3755
+ mock_logger_error : MagicMock ,
3756
+ ):
3757
+ with self .feature ({"projects:first-event-severity-calculation" : True }):
3758
+ event = _get_event_instance (
3759
+ make_event (
3760
+ exception = {"values" : [{"type" : "NopeError" , "value" : "Nopey McNopeface" }]}
3761
+ ),
3762
+ self .project .id ,
3763
+ )
3764
+
3765
+ group , _ = _save_grouphash_and_group (self .project , event , "dogs are great" )
3766
+
3767
+ logger_messages = [call .args [0 ] for call in mock_logger_error .mock_calls ]
3768
+
3769
+ mock_get_severity_score .assert_called ()
3770
+ assert group .data ["metadata" ]["severity" ] == 0
3771
+ assert "Group created without severity score" not in logger_messages
3772
+
3720
3773
@patch ("sentry.event_manager.logger.error" )
3721
3774
@patch ("sentry.event_manager._get_severity_score" , return_value = None )
3722
3775
def test_no_error_logged_on_no_severity_score_when_disabled (
@@ -3768,6 +3821,30 @@ def test_logs_error_on_no_severity_score_when_enabled(
3768
3821
},
3769
3822
)
3770
3823
3824
+ @patch ("sentry.event_manager._save_aggregate" , wraps = _save_aggregate )
3825
+ @patch ("sentry.event_manager.logger.error" )
3826
+ @patch ("sentry.event_manager._get_severity_score" , return_value = 0 )
3827
+ def test_no_error_logged_on_zero_severity_score_when_enabled (
3828
+ self ,
3829
+ mock_get_severity_score : MagicMock ,
3830
+ mock_logger_error : MagicMock ,
3831
+ mock_save_aggregate : MagicMock ,
3832
+ ):
3833
+ with self .feature ({"projects:first-event-severity-calculation" : True }):
3834
+ manager = EventManager (
3835
+ make_event (
3836
+ exception = {"values" : [{"type" : "NopeError" , "value" : "Nopey McNopeface" }]}
3837
+ )
3838
+ )
3839
+ event = manager .save (self .project .id )
3840
+
3841
+ logger_messages = [call .args [0 ] for call in mock_logger_error .mock_calls ]
3842
+
3843
+ mock_save_aggregate .assert_called ()
3844
+ mock_get_severity_score .assert_called ()
3845
+ assert event .group .data ["metadata" ]["severity" ] == 0
3846
+ assert "Group created without severity score" not in logger_messages
3847
+
3771
3848
@patch ("sentry.event_manager._save_aggregate" , wraps = _save_aggregate )
3772
3849
@patch ("sentry.event_manager.logger.error" )
3773
3850
@patch ("sentry.event_manager._get_severity_score" , return_value = None )
@@ -3789,5 +3866,4 @@ def test_no_error_logged_on_no_severity_score_when_disabled(
3789
3866
3790
3867
mock_save_aggregate .assert_called ()
3791
3868
mock_get_severity_score .assert_not_called ()
3792
-
3793
3869
assert "Group created without severity score" not in logger_messages
0 commit comments