Use the NIST MMT vectors to test AES-CBC w/ no padding
diff --git a/tests/primitives/test_nist.py b/tests/primitives/test_nist.py
index d68cd27..88090f9 100644
--- a/tests/primitives/test_nist.py
+++ b/tests/primitives/test_nist.py
@@ -11,7 +11,7 @@
 from ..utils import load_nist_vectors_from_file
 
 
-def parameterize_encrypt(fname):
+def parameterize_kat_encrypt(fname):
     return pytest.mark.parametrize(("key", "iv", "plaintext", "ciphertext"),
         load_nist_vectors_from_file(
             os.path.join("AES/KAT/", fname),
@@ -21,8 +21,18 @@
     )
 
 
+def paramterize_mmt_encrypt(fname):
+    return pytest.mark.parametrize(("key", "iv", "plaintext", "ciphertext"),
+        load_nist_vectors_from_file(
+            os.path.join("AES/MMT", fname),
+            "ENCRYPT",
+            ["key", "iv", "plaintext", "ciphertext"],
+        )
+    )
+
+
 class TestAES_CBC(object):
-    @parameterize_encrypt("CBCGFSbox128.rsp")
+    @parameterize_kat_encrypt("CBCGFSbox128.rsp")
     def test_KAT_GFSbox_128_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -31,7 +41,7 @@
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
 
-    @parameterize_encrypt("CBCGFSbox192.rsp")
+    @parameterize_kat_encrypt("CBCGFSbox192.rsp")
     def test_KAT_GFSbox_192_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -40,7 +50,7 @@
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
 
-    @parameterize_encrypt("CBCGFSbox256.rsp")
+    @parameterize_kat_encrypt("CBCGFSbox256.rsp")
     def test_KAT_GFSbox_256_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -49,7 +59,7 @@
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
 
-    @parameterize_encrypt("CBCKeySbox128.rsp")
+    @parameterize_kat_encrypt("CBCKeySbox128.rsp")
     def test_KAT_KeySbox_128_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -58,7 +68,7 @@
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
 
-    @parameterize_encrypt("CBCKeySbox192.rsp")
+    @parameterize_kat_encrypt("CBCKeySbox192.rsp")
     def test_KAT_KeySbox_192_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -67,7 +77,7 @@
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
 
-    @parameterize_encrypt("CBCKeySbox256.rsp")
+    @parameterize_kat_encrypt("CBCKeySbox256.rsp")
     def test_KAT_KeySbox_256_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -76,7 +86,7 @@
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
 
-    @parameterize_encrypt("CBCVarKey128.rsp")
+    @parameterize_kat_encrypt("CBCVarKey128.rsp")
     def test_KAT_VarKey_128_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -85,7 +95,7 @@
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
 
-    @parameterize_encrypt("CBCVarKey192.rsp")
+    @parameterize_kat_encrypt("CBCVarKey192.rsp")
     def test_KAT_VarKey_192_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -94,7 +104,7 @@
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
 
-    @parameterize_encrypt("CBCVarKey256.rsp")
+    @parameterize_kat_encrypt("CBCVarKey256.rsp")
     def test_KAT_VarKey_256_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -103,7 +113,7 @@
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
 
-    @parameterize_encrypt("CBCVarTxt128.rsp")
+    @parameterize_kat_encrypt("CBCVarTxt128.rsp")
     def test_KAT_VarTxt_128_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -112,7 +122,7 @@
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
 
-    @parameterize_encrypt("CBCVarTxt192.rsp")
+    @parameterize_kat_encrypt("CBCVarTxt192.rsp")
     def test_KAT_VarTxt_192_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -121,7 +131,7 @@
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
 
-    @parameterize_encrypt("CBCVarTxt256.rsp")
+    @parameterize_kat_encrypt("CBCVarTxt256.rsp")
     def test_KAT_VarTxt_256_encrypt(self, key, iv, plaintext, ciphertext):
         cipher = BlockCipher(
             ciphers.AES(binascii.unhexlify(key)),
@@ -129,3 +139,30 @@
         )
         actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
         assert binascii.hexlify(actual_ciphertext) == ciphertext
+
+    @paramterize_mmt_encrypt("CBCMMT128.rsp")
+    def test_MMT_128_encrypt(self, key, iv, plaintext, ciphertext):
+        cipher = BlockCipher(
+            ciphers.AES(binascii.unhexlify(key)),
+            modes.CBC(binascii.unhexlify(iv), padding.NoPadding())
+        )
+        actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
+        assert binascii.hexlify(actual_ciphertext) == ciphertext
+
+    @paramterize_mmt_encrypt("CBCMMT192.rsp")
+    def test_MMT_192_encrypt(self, key, iv, plaintext, ciphertext):
+        cipher = BlockCipher(
+            ciphers.AES(binascii.unhexlify(key)),
+            modes.CBC(binascii.unhexlify(iv), padding.NoPadding())
+        )
+        actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
+        assert binascii.hexlify(actual_ciphertext) == ciphertext
+
+    @paramterize_mmt_encrypt("CBCMMT256.rsp")
+    def test_MMT_256_encrypt(self, key, iv, plaintext, ciphertext):
+        cipher = BlockCipher(
+            ciphers.AES(binascii.unhexlify(key)),
+            modes.CBC(binascii.unhexlify(iv), padding.NoPadding())
+        )
+        actual_ciphertext = cipher.encrypt(plaintext) + cipher.finalize()
+        assert binascii.hexlify(actual_ciphertext) == ciphertext