@ -4099,8 +4099,9 @@ class TestScheduler(ZuulTestCase):
self . worker . release ( ' .* ' )
self . waitUntilSettled ( )
def test_client_enqueue_change ( self ) :
" Test that the RPC client can enqueue a change "
def test_client_enqueue_change_with_trigger ( self ) :
""" Test that the RPC client can enqueue a change with the deprecated
trigger argument """
A = self . fake_gerrit . addFakeChange ( ' org/project ' , ' master ' , ' A ' )
A . addApproval ( ' Code-Review ' , 2 )
A . addApproval ( ' Approved ' , 1 )
@ -4124,6 +4125,32 @@ class TestScheduler(ZuulTestCase):
self . assertEqual ( A . reported , 2 )
self . assertEqual ( r , True )
def test_client_enqueue_change_no_trigger ( self ) :
""" Test that the RPC client can enqueue a change without an explicit
trigger """
A = self . fake_gerrit . addFakeChange ( ' org/project ' , ' master ' , ' A ' )
A . addApproval ( ' Code-Review ' , 2 )
A . addApproval ( ' Approved ' , 1 )
client = zuul . rpcclient . RPCClient ( ' 127.0.0.1 ' ,
self . gearman_server . port )
self . addCleanup ( client . shutdown )
r = client . enqueue ( tenant = ' tenant-one ' ,
pipeline = ' gate ' ,
project = ' org/project ' ,
trigger = None ,
change = ' 1,1 ' )
self . waitUntilSettled ( )
self . assertEqual ( self . getJobFromHistory ( ' project-merge ' ) . result ,
' SUCCESS ' )
self . assertEqual ( self . getJobFromHistory ( ' project-test1 ' ) . result ,
' SUCCESS ' )
self . assertEqual ( self . getJobFromHistory ( ' project-test2 ' ) . result ,
' SUCCESS ' )
self . assertEqual ( A . data [ ' status ' ] , ' MERGED ' )
self . assertEqual ( A . reported , 2 )
self . assertEqual ( r , True )
@simple_layout ( ' layouts/three-projects.yaml ' )
def test_client_enqueue_change_wrong_project ( self ) :
" Test that an enqueue fails if a change doesn ' t belong to the project "
@ -4144,7 +4171,7 @@ class TestScheduler(ZuulTestCase):
r = client . enqueue ( tenant = ' tenant-one ' ,
pipeline = ' gate ' ,
project = ' org/project1 ' ,
trigger = ' gerrit ' ,
trigger = None ,
change = ' 2,1 ' )
self . assertEqual ( r , False )
self . waitUntilSettled ( )
@ -4165,7 +4192,7 @@ class TestScheduler(ZuulTestCase):
tenant = ' tenant-one ' ,
pipeline = ' post ' ,
project = ' org/project ' ,
trigger = ' gerrit ' ,
trigger = None ,
ref = ' master ' ,
oldrev = ' 90f173846e3af9154517b88543ffbd1691f31366 ' ,
newrev = A_commit )
@ -4195,7 +4222,7 @@ class TestScheduler(ZuulTestCase):
tenant = ' tenant-one ' ,
pipeline = ' post ' ,
project = ' org/project ' ,
trigger = ' gerrit ' ,
trigger = None ,
ref = ' master ' ,
oldrev = ' 90f173846e3af9154517b88543ffbd1691f31366 ' ,
newrev = A_commit )
@ -4211,7 +4238,7 @@ class TestScheduler(ZuulTestCase):
tenant = ' tenant-one ' ,
pipeline = ' post ' ,
project = ' org/project1 ' ,
trigger = ' gerrit ' ,
trigger = None ,
ref = ' master ' ,
oldrev = ' 90f173846e3af9154517b88543ffbd1691f31366 ' ,
newrev = B_commit )
@ -4405,7 +4432,7 @@ class TestScheduler(ZuulTestCase):
r = client . enqueue ( tenant = ' tenant-foo ' ,
pipeline = ' gate ' ,
project = ' org/project ' ,
trigger = ' gerrit ' ,
trigger = None ,
change = ' 1,1 ' )
self . assertEqual ( r , False )
@ -4414,7 +4441,7 @@ class TestScheduler(ZuulTestCase):
r = client . enqueue ( tenant = ' tenant-one ' ,
pipeline = ' gate ' ,
project = ' project-does-not-exist ' ,
trigger = ' gerrit ' ,
trigger = None ,
change = ' 1,1 ' )
self . assertEqual ( r , False )
@ -4423,16 +4450,7 @@ class TestScheduler(ZuulTestCase):
r = client . enqueue ( tenant = ' tenant-one ' ,
pipeline = ' pipeline-does-not-exist ' ,
project = ' org/project ' ,
trigger = ' gerrit ' ,
change = ' 1,1 ' )
self . assertEqual ( r , False )
with testtools . ExpectedException ( zuul . rpcclient . RPCFailure ,
" Invalid trigger " ) :
r = client . enqueue ( tenant = ' tenant-one ' ,
pipeline = ' gate ' ,
project = ' org/project ' ,
trigger = ' trigger-does-not-exist ' ,
trigger = None ,
change = ' 1,1 ' )
self . assertEqual ( r , False )
@ -4441,7 +4459,7 @@ class TestScheduler(ZuulTestCase):
r = client . enqueue ( tenant = ' tenant-one ' ,
pipeline = ' gate ' ,
project = ' org/project ' ,
trigger = ' gerrit ' ,
trigger = None ,
change = ' 1,1 ' )
self . assertEqual ( r , False )
@ -4460,7 +4478,7 @@ class TestScheduler(ZuulTestCase):
tenant = ' tenant-one ' ,
pipeline = ' post ' ,
project = ' org/project ' ,
trigger = ' gerrit ' ,
trigger = None ,
ref = ' master ' ,
oldrev = ' 90f173846e3af9154517b88543ffbd1691f31366 ' ,
newrev = ' 10054041 ' )
@ -4471,7 +4489,7 @@ class TestScheduler(ZuulTestCase):
tenant = ' tenant-one ' ,
pipeline = ' post ' ,
project = ' org/project ' ,
trigger = ' gerrit ' ,
trigger = None ,
ref = ' master ' ,
oldrev = ' 10054041 ' ,
newrev = ' 90f173846e3af9154517b88543ffbd1691f31366 ' )
@ -4482,7 +4500,7 @@ class TestScheduler(ZuulTestCase):
tenant = ' tenant-one ' ,
pipeline = ' post ' ,
project = ' org/project ' ,
trigger = ' gerrit ' ,
trigger = None ,
ref = ' master ' ,
oldrev = ' 90f173846e3af9154517b88543ffbd1691f31366 ' ,
newrev = ' notbase16 ' )
@ -4493,7 +4511,7 @@ class TestScheduler(ZuulTestCase):
tenant = ' tenant-one ' ,
pipeline = ' post ' ,
project = ' org/project ' ,
trigger = ' gerrit ' ,
trigger = None ,
ref = ' master ' ,
oldrev = ' notbase16 ' ,
newrev = ' 90f173846e3af9154517b88543ffbd1691f31366 ' )
@ -6204,7 +6222,7 @@ class TestAmbiguousProjectNames(ZuulTestCase):
r = client . enqueue ( tenant = ' tenant-one ' ,
pipeline = ' check ' ,
project = ' review.example.com/org/project ' ,
trigger = ' gerrit ' ,
trigger = None ,
change = ' 1,1 ' )
self . waitUntilSettled ( )
self . assertEqual ( self . getJobFromHistory ( ' project-merge ' ) . result ,