diff --git a/pallets/offences/src/lib.rs b/pallets/offences/src/lib.rs
index 3d7c119f8c237b652987f77238f17d16c215b278..02316c4f6d1aa92dc4549de15156b0b5b0f25fe8 100644
--- a/pallets/offences/src/lib.rs
+++ b/pallets/offences/src/lib.rs
@@ -124,7 +124,7 @@ where
         };
 
         // Define the slash strategy.
-        let slash_strategy = if O::ID != *b"im-online:offlin" {
+        let slash_strategy = if O::ID == *b"im-online:offlin" {
             SlashStrategy::Disconnect
         } else {
             SlashStrategy::BlackList
diff --git a/pallets/offences/src/tests.rs b/pallets/offences/src/tests.rs
index 8b6d27958625e6c674794116b9cfc6dacf43d3f8..1b5fefff81ad4f38b1283519400566474f5ae4f3 100644
--- a/pallets/offences/src/tests.rs
+++ b/pallets/offences/src/tests.rs
@@ -37,6 +37,19 @@ fn should_report_an_authority_and_trigger_on_offence_and_add_to_blacklist() {
         Offences::report_offence(vec![], offence).unwrap();
 
         // then
+        assert_eq!(
+            offence_reports(KIND, time_slot),
+            vec![
+                OffenceDetails {
+                    offender: 5,
+                    reporters: vec![]
+                },
+                OffenceDetails {
+                    offender: 9,
+                    reporters: vec![]
+                }
+            ]
+        );
     });
 }
 
@@ -62,6 +75,13 @@ fn should_not_report_the_same_authority_twice_in_the_same_slot() {
         );
 
         // then
+        assert_eq!(
+            offence_reports(KIND, time_slot),
+            vec![OffenceDetails {
+                offender: 5,
+                reporters: vec![]
+            },]
+        );
     });
 }