~mrazik/jenkins-launchpad-plugin/rebuild_link

« back to all changes in this revision

Viewing changes to tests/test_launchpadTrigger_params.py

  • Committer: jenkins at qa-jenkins-devel-oneiric-amd64
  • Author(s): Martin Mrazik
  • Date: 2012-05-31 08:31:58 UTC
  • mfrom: (16.1.1 jenkins-launchpad-plugin)
  • Revision ID: jenkins@qa-jenkins-devel-oneiric-amd64-20120531083158-ca7vo8etsmkhnrf0
Simplifying the LaunchadTrigger workflow. Note: this breaks backward compatibility.. Fixes: . Approved by jenkins, Allan LeSage.

Show diffs side-by-side

added added

removed removed

Lines of Context:
31
31
            self.assertTrue("usage" in stderr.getvalue())
32
32
 
33
33
 
34
 
    def test_no_a_or_w_specified(self):
35
 
        """Generate the 'specify either a or w' error."""
 
34
    def test_no_trigger_ci_nor_autoland_specified(self):
 
35
        """Generate the 'specify either -t or -l' error."""
36
36
 
37
 
        sys_argv = ['launchpadTrigger.py', '-b', 'lp:faux-dbus-test-runner']
38
 
        error_message = 'error: you must specify one of -a, -w or -n'
 
37
        sys_argv = ['launchpadTrigger.py', '-b', 'lp:faux-dbus-test-runner',
 
38
                    '-j', 'test-job', '-e', 'jenkins-url']
 
39
        error_message = 'You need to specify one of --trigger-ci (-t)'+\
 
40
                        ' or --autoland (-l)'
39
41
        with patch('sys.argv', sys_argv), \
40
42
                util.captured_stderr() as stderr, \
41
43
                patch('launchpadTrigger.sys.exit') as sys_exit:
60
62
                pass
61
63
            self.assertTrue(error_message in stderr.getvalue())
62
64
 
63
 
    
64
 
    def test_trigger_autolanding_wip(self):
65
 
        """Trigger autolanding of a merge which is a work in progress (wip)."""
66
 
 
67
 
        sys_argv = ["launchpadTrigger.py",
68
 
                    "-w",
69
 
                    "--job=faux-dbus-test-runner",
70
 
                    "--branch=lp:faux-dbus-test-runner",
71
 
                    "--autoland"]
72
 
        with patch('sys.argv', sys_argv), \
73
 
                patch.object(self.LaunchpadTrigger.return_value, 'get_merge_proposals') as get_merge_proposals, \
74
 
                patch.object(self.LaunchpadTrigger.return_value, 'trigger_al_building') as trigger_al_building:
75
 
            get_merge_proposals.return_value = [self.merge_proposal]
76
 
            launchpadTrigger.main()
77
 
            trigger_al_building.assert_called_with([self.merge_proposal],
78
 
                                                   'faux-dbus-test-runner',
79
 
                                                   'http://localhost:8080/')
80
 
 
81
 
    
82
65
    def test_trigger_autolanding_no_jenkins_job(self):
83
66
        """Attempt to trigger fails with no Jenkins job."""
84
67
 
87
70
                    "-n",
88
71
                    "--branch=lp:faux-dbus-test-runner",
89
72
                    "--autoland"]
90
 
        error_message = 'error: you need to define jenkins job if you want to trigger one'
 
73
        error_message = 'argument -j/--job is required'
91
74
        with patch('sys.argv', sys_argv), \
92
75
                util.captured_stderr() as stderr:
93
76
            try:
118
101
        """Trigger autolanding with a set of command-line params."""
119
102
 
120
103
        sys_argv = ["launchpadTrigger.py",
121
 
                    "-a",
122
104
                    "--job=faux-dbus-test-runner",
123
105
                    "--branch=lp:faux-dbus-test-runner",
124
106
                    "--autoland"]
136
118
        """Trigger CI with a set of command-line params."""
137
119
 
138
120
        sys_argv = ["launchpadTrigger.py",
139
 
                    "-a",
140
 
                    "--needs-review",
141
121
                    "--branch=lp:faux-dbus-test-runner",
142
 
                    "--trigger",
 
122
                    "--trigger-ci",
143
123
                    "--job=faux-dbus-test-runner"]
144
124
        with patch('sys.argv', sys_argv), \
145
125
                patch.object(self.LaunchpadTrigger.return_value, 'get_merge_proposals') as get_merge_proposals, \
154
134
        """Trigger CI with a set of command-line params."""
155
135
 
156
136
        sys_argv = ["launchpadTrigger.py",
157
 
                    "-w",
158
 
                    "--needs-review",
159
137
                    "--branch=lp:faux-dbus-test-runner",
160
 
                    "--trigger",
161
 
                    "--job=faux-dbus-test-runner"]
 
138
                    "--trigger-ci",
 
139
                    "--job=faux-dbus-test-runner",]
162
140
        with patch('sys.argv', sys_argv), \
163
141
                patch.object(self.LaunchpadTrigger.return_value, 'get_merge_proposals') as get_merge_proposals, \
164
142
                patch.object(self.LaunchpadTrigger.return_value, 'trigger_ci_building') as trigger_ci_building: