--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/configurationengine/source/cone/storage/tests/unittest_webstorage_carbon.py Thu Mar 11 17:04:37 2010 +0200
@@ -0,0 +1,246 @@
+#
+# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+# All rights reserved.
+# This component and the accompanying materials are made available
+# under the terms of "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+#
+# Initial Contributors:
+# Nokia Corporation - initial contribution.
+#
+# Contributors:
+#
+# Description:
+#
+
+import unittest
+import string
+import sys,os
+import pickle
+import time
+import __init__
+
+from cone.public import api, exceptions
+from cone.storage import webstorage
+from cone.carbon import model, persistentjson
+import simplewebserver
+
+featurelist = {
+ "featurelist": {
+ "features": [
+ {
+ "status": "APPROVED",
+ "value_type": "",
+ "description": "None",
+ "title": "TestGroup",
+ "ref": "testgroup",
+ "type": "featuregroup",
+ "id": 11749,
+ "children": [
+ {
+ "status": "APPROVED",
+ "value_type": "boolean",
+ "description": "None",
+ "title": "Child1",
+ "ref": "child1",
+ "type": "feature",
+ "id": 11750,
+ "children": []
+ },
+ {
+ "status": "APPROVED",
+ "value_type": "boolean",
+ "description": "None",
+ "title": "Child1",
+ "ref": "child1_1",
+ "type": "feature",
+ "id": 11751,
+ "children": []
+ },
+ {
+ "status": "APPROVED",
+ "value_type": "boolean",
+ "description": "None",
+ "title": "Child1",
+ "ref": "child1_2",
+ "type": "feature",
+ "id": 11753,
+ "children": []
+ },
+ {
+ "status": "APPROVED",
+ "value_type": "boolean",
+ "description": "Needs description",
+ "title": "Child1",
+ "ref": "child1_3",
+ "type": "feature",
+ "id": 11756,
+ "children": []
+ },
+ {
+ "status": "APPROVED",
+ "value_type": "boolean",
+ "description": "Needs description",
+ "title": "Child1",
+ "ref": "child1_4",
+ "type": "feature",
+ "id": 11759,
+ "children": []
+ },
+ {
+ "status": "APPROVED",
+ "value_type": "boolean",
+ "description": "None",
+ "title": "Child2",
+ "ref": "child2",
+ "type": "feature",
+ "id": 11754,
+ "children": []
+ },
+ {
+ "status": "APPROVED",
+ "value_type": "boolean",
+ "description": "Needs description",
+ "title": "Child2",
+ "ref": "child2_1",
+ "type": "feature",
+ "id": 11757,
+ "children": []
+ },
+ {
+ "status": "APPROVED",
+ "value_type": "boolean",
+ "description": "Needs description",
+ "title": "Child2",
+ "ref": "child2_2",
+ "type": "feature",
+ "id": 11760,
+ "children": []
+ }
+ ]
+ },
+ {
+ "status": "APPROVED",
+ "value_type": "",
+ "description": "Needs description",
+ "title": "TestGroup",
+ "ref": "testgroup_3",
+ "type": "featuregroup",
+ "id": 11758,
+ "children": []
+ },
+ {
+ "status": "APPROVED",
+ "value_type": "",
+ "description": "None",
+ "title": "TestGroup",
+ "ref": "testgroup_1",
+ "type": "featuregroup",
+ "id": 11752,
+ "children": []
+ },
+ {
+ "status": "APPROVED",
+ "value_type": "",
+ "description": "Needs description",
+ "title": "TestGroup",
+ "ref": "testgroup_2",
+ "type": "featuregroup",
+ "id": 11755,
+ "children": []
+ }
+ ],
+ "list_version_id": 34,
+ "expanded": True,
+ "version_identifier": "WORKING",
+ "is_latest_version": True,
+ "list_id": 37,
+ "path": "TEST4",
+ "version_title": "TEST4 (WORKING)",
+ "can_be_released": True,
+ "type": "featurelist",
+ "has_external_relations": False
+ }
+}
+ROOT_PATH = os.path.dirname(os.path.abspath(__file__))
+#class TestWebStorage(unittest.TestCase):
+# def setUp(self):
+# self.store = webstorage.WebStorage('http://localhost:8000/extapi')
+#
+# def test_create_and_list_resources(self):
+# files = self.store.list_resources('/')
+# print files
+# self.assertTrue(len(files)>0)
+##
+# def test_create_and_list_resources_with_non_existing_folder(self):
+# files = self.store.list_resources('foo')
+# self.assertEquals(files,[])
+# files = self.store.list_resources('foo/')
+# self.assertEquals(files,[])
+# files = self.store.list_resources('foo/bar')
+# self.assertEquals(files,[])
+#
+# def test_get_resource(self):
+# res = self.store.open_resource('Zoom.confml')
+## resdata = res.read()
+## self.assertTrue(len(resdata) > 0)
+#
+# def test_get_resource_fails(self):
+# try:
+# res = self.store.open_resource('Zoomi.confml')
+# self.fail('Opening non existing resource succeeds')
+#
+# except exceptions.NotResource, e:
+# pass
+#
+# def test_is_resource(self):
+# ret = self.store.is_resource('Zoom.confml')
+# self.assertTrue(ret)
+#
+# def test_is_resource_false(self):
+# ret = self.store.is_resource('Foobar.confml')
+# self.assertFalse(ret)
+
+class TestCarbonExtapi(unittest.TestCase):
+ def setUp(self):
+ pass
+
+# def test_create_feature(self):
+# extapi = webstorage.CarbonExtapi('http://localhost:8000/extapi')
+# self.assertTrue(extapi.create_feature('TEST4.featurelist',model.CarbonSetting('TestGroup')))
+# self.assertTrue(extapi.create_feature('TEST4.featurelist',model.CarbonBooleanSetting('Child1'), 'TestGroup'))
+# self.assertTrue(extapi.create_feature('TEST4.featurelist',model.CarbonBooleanSetting('Child2'), 'TestGroup'))
+#
+# def test_create_feature_fails(self):
+# extapi = webstorage.CarbonExtapi('http://localhost:8000/extapi')
+# self.assertFalse(extapi.create_feature('TEST4.featurelist',model.CarbonSetting('Foobar2'), 'TestGroup'))
+#
+# def test_create_featurelist(self):
+# extapi = webstorage.CarbonExtapi('http://localhost:8000/extapi')
+# self.assertTrue(extapi.create_featurelist('TEST.featurelist',model.FeatureList(name='TEST9')))
+
+# def test_update_featurelist(self):
+# extapi = webstorage.CarbonExtapi('http://localhost:8000/extapi', password='terytkone09')
+# fl = model.FeatureList(name='TEST9')
+# fl.add_feature(model.CarbonFeature('Test1'))
+# data = persistentjson.dumps(fl)
+# data = {"features" :[],
+# "version_identifier": "WORKING",
+# "flv_description": "Needs description",
+# "path": "TEST9.confml",
+# "type": "featurelist",
+# "name": "TEST9"}
+# print "data %s" % data
+# self.assertTrue(extapi.update_resource('TEST9.featurelist',data))
+
+# def test_create_configuration(self):
+# extapi = webstorage.CarbonExtapi('http://localhost:8000/extapi', password='terytkone09')
+# conf = model.CarbonConfiguration(path='Testing3.confml')
+# (success,conf)= extapi.create_configuration('Testing3.configuration',conf)
+# self.assertTrue(success)
+
+
+if __name__ == '__main__':
+ unittest.main()
+