Пример #1
0
    def testCleanDict(self):
        """Tests  if the fields in the dict is HTML escaped as desired.
    """
        target = {"name": "test", "param1": ">1000", "param2": "<1000", "param3": "a&b"}
        filter_fields = ["param1", "param2", "param3"]
        expected_dict = {"param3": u"a&amp;b", "name": "test", "param1": u"&gt;1000", "param2": u"&lt;1000"}
        self.assertEqual(dicts.cleanDict(target, filter_fields), expected_dict)

        filter_fields = []
        expected_dict = {"param3": "a&b", "name": "test", "param1": ">1000", "param2": "<1000"}
        self.assertEqual(dicts.cleanDict(target, filter_fields), expected_dict)

        # parameter not present in target
        filter_fields = ["other_param"]
        self.assertRaises(KeyError, dicts.cleanDict, target, filter_fields)

        from django.utils.safestring import mark_safe

        target["param1"] = mark_safe(target["param1"])
        expected_dict = {"param3": u"a&amp;b", "name": "test", "param1": ">1000", "param2": u"&lt;1000"}
        filter_fields = ["param1", "param2", "param3"]
        self.assertEqual(dicts.cleanDict(target, filter_fields), expected_dict)

        expected_dict = {"param3": u"a&amp;b", "name": "test", "param1": u"&gt;1000", "param2": u"&lt;1000"}
        self.assertEqual(dicts.cleanDict(target, filter_fields, escape_safe=True), expected_dict)
Пример #2
0
  def testCleanDict(self):
    """Tests  if the fields in the dict is HTML escaped as desired.
    """
    target = {
        'name': 'test', 'param1':'>1000', 'param2':'<1000', 'param3': 'a&b'}
    filter_fields = ['param1', 'param2', 'param3']
    expected_dict = {
        'param3': u'a&amp;b', 'name': 'test', 'param1': u'&gt;1000',
        'param2': u'&lt;1000'
    }
    self.assertEqual(dicts.cleanDict(target, filter_fields), expected_dict)

    filter_fields = []
    expected_dict = {'param3': 'a&b', 'name': 'test', 'param1': '>1000',
                     'param2': '<1000'}
    self.assertEqual(dicts.cleanDict(target, filter_fields), expected_dict)

    #parameter not present in target
    filter_fields = ['other_param']
    self.assertRaises(KeyError, dicts.cleanDict, target, filter_fields)

    from django.utils.safestring import mark_safe
    target['param1'] = mark_safe(target['param1'])
    expected_dict = {
        'param3': u'a&amp;b', 'name': 'test', 'param1': '>1000',
        'param2': u'&lt;1000'}
    filter_fields = ['param1', 'param2', 'param3']
    self.assertEqual(dicts.cleanDict(target, filter_fields), expected_dict)

    expected_dict = {
        'param3': u'a&amp;b', 'name': 'test', 'param1': u'&gt;1000',
        'param2': u'&lt;1000'}
    self.assertEqual(
        dicts.cleanDict(target, filter_fields, escape_safe=True), expected_dict)
Пример #3
0
    def testCleanDict(self):
        """Tests  if the fields in the dict is HTML escaped as desired.
    """
        target = {
            'name': 'test',
            'param1': '>1000',
            'param2': '<1000',
            'param3': 'a&b'
        }
        filter_fields = ['param1', 'param2', 'param3']
        expected_dict = {
            'param3': u'a&amp;b',
            'name': 'test',
            'param1': u'&gt;1000',
            'param2': u'&lt;1000'
        }
        self.assertEqual(dicts.cleanDict(target, filter_fields), expected_dict)

        filter_fields = []
        expected_dict = {
            'param3': 'a&b',
            'name': 'test',
            'param1': '>1000',
            'param2': '<1000'
        }
        self.assertEqual(dicts.cleanDict(target, filter_fields), expected_dict)

        #parameter not present in target
        filter_fields = ['other_param']
        self.assertRaises(KeyError, dicts.cleanDict, target, filter_fields)

        from django.utils.safestring import mark_safe
        target['param1'] = mark_safe(target['param1'])
        expected_dict = {
            'param3': u'a&amp;b',
            'name': 'test',
            'param1': '>1000',
            'param2': u'&lt;1000'
        }
        filter_fields = ['param1', 'param2', 'param3']
        self.assertEqual(dicts.cleanDict(target, filter_fields), expected_dict)

        expected_dict = {
            'param3': u'a&amp;b',
            'name': 'test',
            'param1': u'&gt;1000',
            'param2': u'&lt;1000'
        }
        self.assertEqual(
            dicts.cleanDict(target, filter_fields, escape_safe=True),
            expected_dict)
Пример #4
0
def entityToRowDict(entity, key_order, no_filter, extra_cols_func,
                    button_ops_func, row_ops_func, args):
    """Returns the row dict for the specified entity.
  """

    extra_cols = extra_cols_func(entity, *args)
    button_ops = button_ops_func(entity, *args)
    row_ops = row_ops_func(entity, *args)

    fields = set(key_order).difference(set(extra_cols))

    columns = entity.toDict(list(fields))
    columns.update(extra_cols)
    columns['key'] = str(entity.key().id_or_name())

    filter_fields = [i for i in columns.keys() if i not in no_filter]

    columns = dicts.cleanDict(columns, filter_fields)

    operations = {
        "row": row_ops,
        "buttons": button_ops,
    }

    result = {
        "columns": columns,
        "operations": operations,
    }

    return result
Пример #5
0
def entityToRowDict(entity, key_order, no_filter, extra_cols_func,
                    button_ops_func, row_ops_func, args):
  """Returns the row dict for the specified entity.
  """

  extra_cols = extra_cols_func(entity, *args)
  button_ops = button_ops_func(entity, *args)
  row_ops = row_ops_func(entity, *args)

  fields = set(key_order).difference(set(extra_cols))

  columns = entity.toDict(list(fields))
  columns.update(extra_cols)
  columns['key'] = str(entity.key().id_or_name())

  filter_fields = [i for i in columns.keys() if i not in no_filter]

  columns = dicts.cleanDict(columns, filter_fields)

  operations = {
      "row": row_ops,
      "buttons": button_ops,
  }

  result = {
      "columns": columns,
      "operations": operations,
  }

  return result