diff --git a/test/test_model_modules/test_advanced_paddings.py b/test/test_model_modules/test_advanced_paddings.py
index 5282eb6df34d4d395dbbdd1fd76fd71a95e9c8df..bbeaf1c745a63b3607062b0c4052088c9af06b92 100644
--- a/test/test_model_modules/test_advanced_paddings.py
+++ b/test/test_model_modules/test_advanced_paddings.py
@@ -417,3 +417,61 @@ class TestSymmerticPadding2D:
         sym_pad = SymmetricPadding2D(padding=pad, name=layer_name)(input_x)
         assert sym_pad.get_shape().as_list() == [None, 12, 10, 3]
         assert sym_pad.name == 'SymPad_3x1/MirrorPad:0'
+
+
+class TestPadding2D:
+
+    @pytest.fixture
+    def input_x(self):
+        return keras.Input(shape=(32, 32, 3))
+
+    def test_init(self):
+        padding_layer = Padding2D('SymPad2D')
+        assert padding_layer.padding_type == 'SymPad2D'
+        assert padding_layer.allowed_paddings == {
+            'RefPad2D': ReflectionPadding2D, 'ReflectionPadding2D': ReflectionPadding2D,
+            'SymPad2D': SymmetricPadding2D, 'SymmetricPadding2D': SymmetricPadding2D,
+            'ZeroPad2D': ZeroPadding2D, 'ZeroPadding2D': ZeroPadding2D
+        }
+
+
+    def test_check_and_get_padding_zero_padding(self):
+        assert Padding2D('ZeroPad2D')._check_and_get_padding() == ZeroPadding2D
+        assert Padding2D('ZeroPadding2D')._check_and_get_padding() == ZeroPadding2D
+        assert Padding2D(keras.layers.ZeroPadding2D)._check_and_get_padding() == ZeroPadding2D
+
+    def test_check_and_get_padding_sym_padding(self):
+        assert Padding2D('SymPad2D')._check_and_get_padding() == SymmetricPadding2D
+        assert Padding2D('SymmetricPadding2D')._check_and_get_padding() == SymmetricPadding2D
+        assert Padding2D(SymmetricPadding2D)._check_and_get_padding() == SymmetricPadding2D
+
+    def test_check_and_get_padding_ref_padding(self):
+        assert Padding2D('RefPad2D')._check_and_get_padding() == ReflectionPadding2D
+        assert Padding2D('ReflectionPadding2D')._check_and_get_padding() == ReflectionPadding2D
+        assert Padding2D(ReflectionPadding2D)._check_and_get_padding() == ReflectionPadding2D
+
+    def test_check_and_get_padding_raises(self,):
+        with pytest.raises(NotImplementedError) as einfo:
+            Padding2D('FalsePadding2D')._check_and_get_padding()
+        assert "`'FalsePadding2D'' is not implemented as padding. " \
+               "Use one of those: i) `RefPad2D', ii) `SymPad2D', iii) `ZeroPad2D'" in str(einfo.value)
+        with pytest.raises(TypeError) as einfo:
+            Padding2D(keras.layers.Conv2D)._check_and_get_padding()
+        assert "`Conv2D' is not a valid padding layer type. Use one of those: "\
+               "i) ReflectionPadding2D, ii) SymmetricPadding2D, iii) ZeroPadding2D" in str(einfo.value)
+
+    @pytest.mark.parametrize("pad_type", ["SymPad2D", "SymmetricPadding2D", SymmetricPadding2D,
+                                          "RefPad2D", "ReflectionPadding2D", ReflectionPadding2D,
+                                          "ZeroPad2D", "ZeroPadding2D", ZeroPadding2D])
+    def test_call(self, pad_type, input_x):
+        pd = Padding2D(pad_type)
+        if hasattr(pad_type, "__name__"):
+            layer_name = pad_type.__name__
+        else:
+            layer_name = pad_type
+        pd_ap = pd(padding=(1,2), name=f"{layer_name}_layer")(input_x)
+        assert pd_ap._keras_history[0].input_shape == (None, 32, 32, 3)
+        assert pd_ap._keras_history[0].output_shape == (None, 34, 36, 3)
+        assert pd_ap._keras_history[0].padding == ((1, 1), (2, 2))
+        assert pd_ap._keras_history[0].name == f"{layer_name}_layer"
+
diff --git a/test/test_model_modules/test_inception_model.py b/test/test_model_modules/test_inception_model.py
index 9dee30788c34cd8d1a7572947ea2e568ac2006b7..e5e92158425a73c5af1c6d1623d970e1037bbd80 100644
--- a/test/test_model_modules/test_inception_model.py
+++ b/test/test_model_modules/test_inception_model.py
@@ -277,48 +277,3 @@ class TestInceptionModelBase:
         bn = base.batch_normalisation(input_x)._keras_history[0]
         assert isinstance(bn, keras.layers.normalization.BatchNormalization)
         assert bn.name == "Block_0a_BN"
-
-    def test_padding_layer_zero_padding(self, base, input_x):
-        padding_size = ((1, 1), (0, 0))
-        zp = base.padding_layer('ZeroPad2D')
-        assert zp == keras.layers.convolutional.ZeroPadding2D
-        assert base.padding_layer('ZeroPadding2D') == keras.layers.convolutional.ZeroPadding2D
-        assert base.padding_layer(keras.layers.ZeroPadding2D) == keras.layers.convolutional.ZeroPadding2D
-        assert zp.__name__ == 'ZeroPadding2D'
-        zp_ap = zp(padding=padding_size)(input_x)
-        assert zp_ap._keras_history[0].padding == ((1, 1), (0, 0))
-
-    def test_padding_layer_sym_padding(self, base, input_x):
-        padding_size = ((1, 1), (0, 0))
-        zp = base.padding_layer('SymPad2D')
-        assert zp == SymmetricPadding2D
-        assert base.padding_layer('SymmetricPadding2D') == SymmetricPadding2D
-        assert base.padding_layer(SymmetricPadding2D) == SymmetricPadding2D
-        assert zp.__name__ == 'SymmetricPadding2D'
-        zp_ap = zp(padding=padding_size)(input_x)
-        assert zp_ap._keras_history[0].padding == ((1, 1), (0, 0))
-
-    def test_padding_layer_ref_padding(self, base, input_x):
-        padding_size = ((1, 1), (0, 0))
-        zp = base.padding_layer('RefPad2D')
-        assert zp == ReflectionPadding2D
-        assert base.padding_layer('ReflectionPadding2D') == ReflectionPadding2D
-        assert base.padding_layer(ReflectionPadding2D) == ReflectionPadding2D
-        assert zp.__name__ == 'ReflectionPadding2D'
-        zp_ap = zp(padding=padding_size)(input_x)
-        assert zp_ap._keras_history[0].padding == ((1, 1), (0, 0))
-
-    def test_padding_layer_raises(self, base, input_x):
-        with pytest.raises(NotImplementedError) as einfo:
-            base.padding_layer('FalsePadding2D')
-        assert "`'FalsePadding2D'' is not implemented as padding. " \
-               "Use one of those: i) `RefPad2D', ii) `SymPad2D', iii) `ZeroPad2D'" in str(einfo.value)
-        with pytest.raises(TypeError) as einfo:
-            base.padding_layer(keras.layers.Conv2D)
-        assert "`Conv2D' is not a valid padding layer type. Use one of those: "\
-               "i) ReflectionPadding2D, ii) SymmetricPadding2D, iii) ZeroPadding2D" in str(einfo.value)
-
-
-
-
-