Skip to content

Commit

Permalink
Merge pull request aparo#68 from ieure/scriptfields_exception
Browse files Browse the repository at this point in the history
Scriptfields missing ScriptFieldsError import
  • Loading branch information
Alberto Paro committed Jul 27, 2011
2 parents 7c6099b + 9fb1fbc commit cac68c8
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 7 deletions.
16 changes: 9 additions & 7 deletions pyes/scriptfields.py
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@

__author__ = 'Armando Guereca'

from pyes.exceptions import ScriptFieldsError

class ScriptFields(object):
"""
This object create the script_fields definition
Expand All @@ -11,7 +13,7 @@ class ScriptFields(object):
def __init__(self, field_name, script, params = None):
self.fields={}
self.add_field(field_name, script, params or {})

def add_field(self, field_name, script, params = None):
"""
Add a field to script_fields
Expand All @@ -26,22 +28,22 @@ def add_field(self, field_name, script, params = None):
if len(params):
data['params'] = params
else:
raise ScriptFieldsError("Parameters should be a valid dictionary")
raise ScriptFieldsError("Parameters should be a valid dictionary")

self.fields[field_name] = data

def add_parameter(self, field_name, param_name, param_value):
"""
Add a parameter to a field into script_fields
The ScriptFields object will be returned, so calls to this can be chained.
"""
try:
self.fields[field_name]['params'][param_name] = param_value
except Exception as ex:
raise ScriptFieldsError("Error adding parameter %s with value %s :%s" % (param_name,param_value,ex))

return self

def serialize(self):
def serialize(self):
return self.fields
18 changes: 18 additions & 0 deletions pyes/tests/test_scriptfields.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# -*- coding: utf-8 -*-
#
# Author: Ian Eure <[email protected]>
#

import unittest

import pyes.exceptions as exc
import pyes.scriptfields as sf

class ScriptFieldsTest(unittest.TestCase):

def test_scriptfieldserror_imported(self):
self.assertTrue(hasattr(sf, 'ScriptFieldsError'))


if __name__ == '__main__':
unittest.main()

0 comments on commit cac68c8

Please sign in to comment.