Skip to content

Commit

Permalink
- Added integer_properties, listofints_properties, listofmixed_proper…
Browse files Browse the repository at this point in the history
…ties tests.
  • Loading branch information
ewongbb committed Jan 28, 2013
1 parent df98638 commit 5171eb8
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 1 deletion.
11 changes: 11 additions & 0 deletions master/buildbot/schedulers/forcesched.py
Expand Up @@ -491,6 +491,17 @@ def __init__(self, name, builderNames,
config.error("ForceScheduler reason must be a StringParameter: %r" %
reason)

if isinstance(properties, list):
if properties:
for item in properties:
if not isinstance(item, BaseParameter):
config.error("ForceScheduler properties must be a list of BaseParameters: %r" %
properties)
else:
config.error("ForceScheduler properties must be a list of BaseParameter: %r" %
properties)


if isinstance(username, BaseParameter):
self.username = username
else:
Expand Down
21 changes: 20 additions & 1 deletion master/buildbot/test/unit/test_schedulers_forcesched.py
Expand Up @@ -21,7 +21,7 @@
from buildbot.schedulers.forcesched import BooleanParameter, UserNameParameter
from buildbot.schedulers.forcesched import ChoiceStringParameter, ValidationError
from buildbot.schedulers.forcesched import NestedParameter, AnyPropertyParameter
from buildbot.schedulers.forcesched import CodebaseParameter
from buildbot.schedulers.forcesched import CodebaseParameter, BaseParameter
from buildbot.test.util import scheduler
from buildbot.test.util.config import ConfigErrorsMixin

Expand Down Expand Up @@ -480,3 +480,22 @@ def test_listofmixed_builderNames(self):
lambda: ForceScheduler(name='testsched',
builderNames=['test', 1234],
codebases=['bar'], username="foo"))

def test_integer_properties(self):
self.assertRaisesConfigError("ForceScheduler properties must be a list of Base Parameters:",
lambda: ForceScheduler(name='testsched', builderNames=[],
codebases=['bar'], username="foo",
properties=1234))

def test_listofints_properties(self):
self.assertRaisesConfigError("ForceScheduler properties must be a list of BaseParameters:",
lambda: ForceScheduler(name='testsched', builderNames=[],
codebases=['bar'], username="foo",
properties=[1234, 2345]))

def test_listofmixed_properties(self):
self.assertRaisesConfigError("ForceScheduler properties must be a list of BaseParameters:",
lambda: ForceScheduler(name='testsched', builderNames=[],
codebases=['bar'], username="foo",
properties=[BaseParameter(name="test",),
4567]))

0 comments on commit 5171eb8

Please sign in to comment.