diff --git a/src/Libero/Sniffs/ControlStructures/RequireTernaryOperatorSniff.php b/src/Libero/Sniffs/ControlStructures/RequireTernaryOperatorSniff.php
new file mode 100644
index 0000000..7713434
--- /dev/null
+++ b/src/Libero/Sniffs/ControlStructures/RequireTernaryOperatorSniff.php
@@ -0,0 +1,26 @@
+getMessage(), 'without curly braces is not supported')) {
+ throw $e;
+ }
+ }
+ }
+}
diff --git a/src/Libero/ruleset.xml b/src/Libero/ruleset.xml
index e4d5244..a5458b8 100644
--- a/src/Libero/ruleset.xml
+++ b/src/Libero/ruleset.xml
@@ -91,6 +91,8 @@
+
+
diff --git a/tests/cases/php/null-coalesce b/tests/cases/php/null-coalesce
index 6c497e5..52a846d 100644
--- a/tests/cases/php/null-coalesce
+++ b/tests/cases/php/null-coalesce
@@ -32,11 +32,7 @@ $bar = $bar ?? 'bar';
$bar = $bar['baz'] ?? 'baz';
-if (isset($foo)) {
- $bar = $foo;
-} else {
- $bar = 'foo';
-}
+$bar = $foo ?? 'foo';
$fooBar = isset($foo, $bar) ? 'foo' : 'bar';
diff --git a/tests/cases/php/parentheses-useless b/tests/cases/php/parentheses-useless
index 4f9fc2d..6b1e876 100644
--- a/tests/cases/php/parentheses-useless
+++ b/tests/cases/php/parentheses-useless
@@ -6,7 +6,7 @@ Parentheses must not be used unnecessarily
declare(strict_types=1);
$foo = ('bar');
-$baz = ($qux !== null) ? true : false;
+$baz = ($qux !== null) ? true : null;
$quux = ($quuz) ? 1 : 0;
$corge = (true || false) ? 0 : 1;
@@ -22,7 +22,7 @@ switch ($grault) {
declare(strict_types=1);
$foo = 'bar';
-$baz = $qux !== null ? true : false;
+$baz = $qux !== null ? true : null;
$quux = $quuz ? 1 : 0;
$corge = (true || false) ? 0 : 1;
diff --git a/tests/cases/php/ternary b/tests/cases/php/ternary
new file mode 100644
index 0000000..3e7eed6
--- /dev/null
+++ b/tests/cases/php/ternary
@@ -0,0 +1,37 @@
+---DESCRIPTION---
+Ternary expressions should be used
+---CONTENTS---
+