Moved delete_view_by_url back to jenkins object
authorAleksey Maksimov <ctpeko3a@gmail.com>
Fri, 29 Nov 2013 16:21:05 +0000 (00:21 +0800)
committerAleksey Maksimov <ctpeko3a@gmail.com>
Fri, 29 Nov 2013 16:21:05 +0000 (00:21 +0800)
jenkinsapi/jenkins.py
jenkinsapi/views.py
jenkinsapi_tests/systests/test_views.py

index 841941b..c86b908 100644 (file)
@@ -193,6 +193,12 @@ class Jenkins(JenkinsBase):
         str_view_name = str_view_url.split('/view/')[-1].replace('/', '')
         return View(str_view_url, str_view_name, jenkins_obj=self)
 
+    def delete_view_by_url(self, str_url):
+        url = "%s/doDelete" % str_url
+        self.requester.post_and_confirm_status(url, data='')
+        self.poll()
+        return self
+
     def __getitem__(self, jobname):
         """
         Get a job by name
index 52e3375..2af052b 100644 (file)
@@ -78,13 +78,6 @@ class Views(object):
         """
         return list(self.iterkeys())
 
-    def delete_view_by_url(self, str_url):
-        url = "%s/doDelete" % str_url
-        response = self.requester.get_url(url, data='')
-        response = response
-        self.jenkins.poll()
-        return self
-
     def create(self, view_name, view_type=LIST_VIEW):
         """
         Create a view
index a594930..be9cfa9 100644 (file)
@@ -35,6 +35,18 @@ class TestViews(BaseSystemTest):
         del self.jenkins.views[view1_name]
         self.assertNotIn(view1_name, self.jenkins.views)
 
+    def test_create_and_delete_views_by_url(self):
+        self._create_job()
+        view1_name = random_string()
+        new_view = self.jenkins.views.create(view1_name)
+        self.assertIsInstance(new_view, View)
+        self.assertIn(view1_name, self.jenkins.views)
+        view_url = new_view.baseurl
+        view_by_url = self.jenkins.get_view_by_url(view_url)
+        self.assertIsInstance(view_by_url, View)
+        self.jenkins.delete_view_by_url(view_url)
+        self.assertNotIn(view1_name, self.jenkins.views)
+
     def test_delete_view_which_does_not_exist(self):
         self._create_job()
         view1_name = random_string()