summaryrefslogtreecommitdiff
path: root/Pb_Api/Param
diff options
context:
space:
mode:
Diffstat (limited to 'Pb_Api/Param')
-rw-r--r--Pb_Api/Param/Image_Url.py7
-rw-r--r--Pb_Api/Param/MultiSelect.py16
-rw-r--r--Pb_Api/Param/String.py3
-rw-r--r--Pb_Api/Param/Username.py7
-rw-r--r--Pb_Api/Param/__init__.py23
5 files changed, 56 insertions, 0 deletions
diff --git a/Pb_Api/Param/Image_Url.py b/Pb_Api/Param/Image_Url.py
new file mode 100644
index 0000000..d199e11
--- /dev/null
+++ b/Pb_Api/Param/Image_Url.py
@@ -0,0 +1,7 @@
+from config import TEST_URL
+from Pb_Api.Param.String import Pb_Api_Param_String
+
+class Pb_Api_Param_Image_Url(Pb_Api_Param_String):
+ def __init__(self, options):
+ super(Pb_Api_Param_Image_Url, self).__init__(*args, **kwargs)
+ self.value(TEST_URL, autogenerated=1)
diff --git a/Pb_Api/Param/MultiSelect.py b/Pb_Api/Param/MultiSelect.py
new file mode 100644
index 0000000..c482dfd
--- /dev/null
+++ b/Pb_Api/Param/MultiSelect.py
@@ -0,0 +1,16 @@
+from Pb_Api.Param import Pb_Api_Param
+
+class Pb_Api_Param_MultiSelect(Pb_Api_Param):
+ def __init__(self, options):
+ super(Pb_Api_Param_MultiSelect, self).__init__(*args, **kwargs)
+ def options(self):
+ return self.options
+ def value(self, *args):
+ if len(args) > 1:
+ valid = False
+ for i in self.options:
+ if args[0] == i['value']: valid = True
+ if not valid : raise ValueError
+ super(Pb_Api_Param_MultiSelect, self).value(args[0])
+ def randomize(self):
+ pass
diff --git a/Pb_Api/Param/String.py b/Pb_Api/Param/String.py
new file mode 100644
index 0000000..f7d873c
--- /dev/null
+++ b/Pb_Api/Param/String.py
@@ -0,0 +1,3 @@
+class Pb_Api_Param_String(Pb_Api_Param):
+ def __init__(self, *args, **kwargs):
+ super(Pb_Api_Param_String, self).__init__(*args, **kwargs)
diff --git a/Pb_Api/Param/Username.py b/Pb_Api/Param/Username.py
new file mode 100644
index 0000000..80b445c
--- /dev/null
+++ b/Pb_Api/Param/Username.py
@@ -0,0 +1,7 @@
+from config import USERNAME
+from Pb_Api.Param.String import Pb_Api_Param_String
+
+class Pb_Api_Param_Username(Pb_Api_Param_String):
+ def __init__(self, options):
+ super(Pb_Api_Param_Username, self).__init__(*args, **kwargs)
+ self.value(USERNAME, autogenerated=1)
diff --git a/Pb_Api/Param/__init__.py b/Pb_Api/Param/__init__.py
new file mode 100644
index 0000000..af13a2a
--- /dev/null
+++ b/Pb_Api/Param/__init__.py
@@ -0,0 +1,23 @@
+class Pb_Api_Param(object):
+ def name(self):
+ return self.name
+ def required(self):
+ return self.required
+
+ def manually_set(self, *args):
+ if len(args) >= 1:
+ self._manually_set = args[0]
+ return self._manually_set
+
+ def value(self, *args, **kwargs):
+ if len(args) >= 1:
+ self._value = args[0]
+ if not 'autogenerated' in kwargs:
+ self.manually_set(1)
+ self.is_ready(1)
+ return self._value
+
+ def is_ready(self, *args):
+ if len(args) >= 1:
+ self._is_ready = args[0]
+ return self._is_ready or not self.required()