Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/storetests.py4
-rw-r--r--tutorius/store.py18
2 files changed, 15 insertions, 7 deletions
diff --git a/tests/storetests.py b/tests/storetests.py
index 1752fe6..f3d813c 100644
--- a/tests/storetests.py
+++ b/tests/storetests.py
@@ -15,6 +15,7 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
import unittest
+import uuid
from tests.utils import skip, catch_unimplemented
import random
@@ -99,13 +100,14 @@ class StoreProxyLoginTest(unittest.TestCase):
'name': 'newtut',
'summary': 'This is a tutorial',
'filename': 'test.xml',
+ 'guid': str(uuid.uuid1()),
'homepage': 'http://google.com',
'version': '1',
'cat1': '17',
'cat2': '18',
'cat3': ''
}
- assert self.store.publish('This should be a real tutorial...', tutorial_info)
+ assert self.store.publish('This should be a real tutorial...', tutorial_info) != -1
@catch_unimplemented
def test_unpublish(self):
diff --git a/tutorius/store.py b/tutorius/store.py
index 81925ed..d9ea3ea 100644
--- a/tutorius/store.py
+++ b/tutorius/store.py
@@ -323,11 +323,11 @@ class StoreProxy(object):
headers = { 'X-API-Auth' : self.api_auth_key }
response = self.conn.request_post(request_url, None, None, None, headers)
-
+
if self.helper.iserror(response):
- return False
+ return -1
- return True
+ return tutorial_store_id
# Otherwise, we want to publish a new tutorial
if tutorial_info == None:
@@ -338,11 +338,17 @@ class StoreProxy(object):
headers = { 'X-API-Auth' : self.api_auth_key }
response = self.conn.request_post(request_url, tutorial_info, tutorial, tutorial_info['filename'], headers)
-
+
if self.helper.iserror(response):
- return False
+ return -1
+
+ xml_response = minidom.parseString(response['body'])
+
+ id_node = xml_response.getElementsByTagName("id")[0]
+
+ id = id_node.getAttribute('value')
- return True
+ return id
def unpublish(self, tutorial_store_id):