From 31554d0a900075e4be1275d5fb845e24bb091b37 Mon Sep 17 00:00:00 2001
From: Michael Hanselmann <hansmi@google.com>
Date: Fri, 11 Mar 2011 15:57:37 +0100
Subject: [PATCH] qlang: Remove unused ReadSimpleFilter
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Michael Hanselmann <hansmi@google.com>
Reviewed-by: RenΓ© Nussbaumer <rn@google.com>
---
 lib/qlang.py                  | 49 +----------------------------------
 test/ganeti.qlang_unittest.py | 27 -------------------
 2 files changed, 1 insertion(+), 75 deletions(-)

diff --git a/lib/qlang.py b/lib/qlang.py
index 02cdef1c2..ad9c9498c 100644
--- a/lib/qlang.py
+++ b/lib/qlang.py
@@ -54,55 +54,8 @@ OP_REGEXP = "=~"
 OP_CONTAINS = "=[]"
 
 
-def ReadSimpleFilter(namefield, filter_):
-  """Function extracting wanted names from restricted filter.
-
-  This should only be used until proper filtering is implemented. The filter
-  must either be empty or of the format C{["|", ["=", field, "name1"], ["=",
-  field, "name2"], ...]}.
-
-  """
-  if filter_ is None:
-    return []
-
-  if not isinstance(filter_, list):
-    raise errors.ParameterError("Filter should be list")
-
-  if not filter_ or filter_[0] != OP_OR:
-    raise errors.ParameterError("Filter should start with OR operator")
-
-  if len(filter_) < 2:
-    raise errors.ParameterError("Invalid filter, OR operator should have"
-                                " operands")
-
-  result = []
-
-  for idx, item in enumerate(filter_[1:]):
-    if not isinstance(item, list):
-      raise errors.ParameterError("Invalid OR operator, operand %s not a"
-                                  " list" % idx)
-
-    if len(item) != 3 or item[0] != OP_EQUAL:
-      raise errors.ParameterError("Invalid OR operator, operand %s is not an"
-                                  " equality filter" % idx)
-
-    (_, name, value) = item
-
-    if not isinstance(value, basestring):
-      raise errors.ParameterError("Operand %s for OR should compare against a"
-                                  " string" % idx)
-
-    if name != namefield:
-      raise errors.ParameterError("Operand %s for OR should filter field '%s',"
-                                  " not '%s'" % (idx, namefield, name))
-
-    result.append(value)
-
-  return result
-
-
 def MakeSimpleFilter(namefield, values):
-  """Builds a filter for use with L{ReadSimpleFilter}.
+  """Builds simple a filter.
 
   @param namefield: Name of field containing item name
   @param values: List of names
diff --git a/test/ganeti.qlang_unittest.py b/test/ganeti.qlang_unittest.py
index 72c5558bd..5bf3c2502 100755
--- a/test/ganeti.qlang_unittest.py
+++ b/test/ganeti.qlang_unittest.py
@@ -30,32 +30,6 @@ from ganeti import qlang
 import testutils
 
 
-class TestReadSimpleFilter(unittest.TestCase):
-  def _Test(self, filter_, expected):
-    self.assertEqual(qlang.ReadSimpleFilter("name", filter_), expected)
-
-  def test(self):
-    self._Test(None, [])
-    self._Test(["|", ["=", "name", "xyz"]], ["xyz"])
-
-    for i in [1, 3, 10, 25, 140]:
-      self._Test(["|"] + [["=", "name", "node%s" % j] for j in range(i)],
-                 ["node%s" % j for j in range(i)])
-
-  def testErrors(self):
-    for i in [123, True, False, "", "Hello World", "a==b",
-              [], ["x"], ["x", "y", "z"], ["|"],
-              ["|", ["="]], ["|", "x"], ["|", 123],
-              ["|", ["=", "otherfield", "xyz"]],
-              ["|", ["=", "name", "xyz"], "abc"],
-              ["|", ["=", "name", "xyz", "too", "long"]],
-              ["|", ["=", "name", []]],
-              ["|", ["=", "name", 999]],
-              ["|", ["=", "name", "abc"], ["=", "otherfield", "xyz"]]]:
-      self.assertRaises(errors.ParameterError, qlang.ReadSimpleFilter,
-                        "name", i)
-
-
 class TestMakeSimpleFilter(unittest.TestCase):
   def _Test(self, field, names, expected, parse_exp=None):
     if parse_exp is None:
@@ -63,7 +37,6 @@ class TestMakeSimpleFilter(unittest.TestCase):
 
     filter_ = qlang.MakeSimpleFilter(field, names)
     self.assertEqual(filter_, expected)
-    self.assertEqual(qlang.ReadSimpleFilter(field, filter_), parse_exp)
 
   def test(self):
     self._Test("name", None, None, parse_exp=[])
-- 
GitLab