summaryrefslogtreecommitdiffstats
path: root/tests/test_classificationmap.py
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 17:43:34 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 17:43:34 +0000
commit0fcce96a175531ec6042cde1b11a0052aa261dd5 (patch)
tree898a1e161c4984b41e6a732866bd73b24f0f7b7a /tests/test_classificationmap.py
parentInitial commit. (diff)
downloadsuricata-update-0fcce96a175531ec6042cde1b11a0052aa261dd5.tar.xz
suricata-update-0fcce96a175531ec6042cde1b11a0052aa261dd5.zip
Adding upstream version 1.3.2.upstream/1.3.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/test_classificationmap.py')
-rw-r--r--tests/test_classificationmap.py46
1 files changed, 46 insertions, 0 deletions
diff --git a/tests/test_classificationmap.py b/tests/test_classificationmap.py
new file mode 100644
index 0000000..fb3d205
--- /dev/null
+++ b/tests/test_classificationmap.py
@@ -0,0 +1,46 @@
+# Copyright (C) 2017 Open Information Security Foundation
+#
+# You can copy, redistribute or modify this Program under the terms of
+# the GNU General Public License version 2 as published by the Free
+# Software Foundation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# version 2 along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
+
+import unittest
+
+from suricata.update.maps import ClassificationMap
+
+class ClassificationMapTestCase(unittest.TestCase):
+
+ test_filename = "tests/classification1.config"
+
+ def test_load_from_file(self):
+ m = ClassificationMap(open(self.test_filename))
+
+ # Classifications are indexed at 1.
+ self.assertEqual(None, m.get(0))
+
+ c = m.get(1)
+ self.assertEqual("not-suspicious", c["name"])
+ self.assertEqual("Not Suspicious Traffic", c["description"])
+ self.assertEqual(3, c["priority"])
+
+ c = m.get(34)
+ self.assertEqual("default-login-attempt", c["name"])
+ self.assertEqual("Attempt to login by a default username and password",
+ c["description"])
+ self.assertEqual(2, c["priority"])
+
+ c = m.get_by_name("unknown")
+ self.assertTrue(c is not None)
+ self.assertEqual("unknown", c["name"])
+ self.assertEqual("Unknown Traffic", c["description"])
+ self.assertEqual(3, c["priority"])