|
1 # |
|
2 # Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
|
3 # All rights reserved. |
|
4 # This component and the accompanying materials are made available |
|
5 # under the terms of "Eclipse Public License v1.0" |
|
6 # which accompanies this distribution, and is available |
|
7 # at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 # |
|
9 # Initial Contributors: |
|
10 # Nokia Corporation - initial contribution. |
|
11 # |
|
12 # Contributors: |
|
13 # |
|
14 # Description: |
|
15 # |
|
16 |
|
17 import unittest |
|
18 import os |
|
19 import __init__ |
|
20 from cone.public import * |
|
21 |
|
22 class TestPublicApiConfiguration(unittest.TestCase): |
|
23 def setUp(self): |
|
24 pass |
|
25 |
|
26 def test_api_configuration_creation(self): |
|
27 config = api.Configuration("test") |
|
28 self.assertTrue(config!=None) |
|
29 |
|
30 |
|
31 class TestPluginFactory(unittest.TestCase): |
|
32 class FactoryTestImplReader(plugin.ReaderBase): |
|
33 FILE_EXTENSIONS = ['factorytest'] |
|
34 |
|
35 class ConeDummyReader(persistence.ConeReader): |
|
36 @classmethod |
|
37 def supported_elem(cls, elemname): |
|
38 if elemname.lower() == "dummy": |
|
39 return True |
|
40 else: |
|
41 return False |
|
42 def __init__(self): |
|
43 super(persistence.ConeReader,self).__init__() |
|
44 |
|
45 class ConeDummyWriter(persistence.ConeWriter): |
|
46 @classmethod |
|
47 def supported_class(cls, classname): |
|
48 if classname.lower() == "dummy": |
|
49 return True |
|
50 else: |
|
51 return False |
|
52 |
|
53 def __init__(self): |
|
54 super(persistence.ConeWriter,self).__init__() |
|
55 |
|
56 |
|
57 |
|
58 def test_factory_is_supported_impl_file(self): |
|
59 plugin.ImplFactory.set_reader_classes_override([self.FactoryTestImplReader]) |
|
60 try: |
|
61 self.assertTrue(api.Factory().is_supported_impl_file("some_file.factorytest")) |
|
62 self.assertTrue(api.Factory().is_supported_impl_file("SOME_FILE.FACTORYTEST")) |
|
63 self.assertFalse(api.Factory().is_supported_impl_file("some_file.foo")) |
|
64 finally: |
|
65 plugin.ImplFactory.set_reader_classes_override(None) |
|
66 |
|
67 def test_get_reader_fails(self): |
|
68 try: |
|
69 api.Factory().get_reader_for_elem("") |
|
70 self.fail("Not existing reader creation succeeds?") |
|
71 except exceptions.ConePersistenceError,e: |
|
72 self.assertTrue(True) |
|
73 |
|
74 def test_get_writer_fails(self): |
|
75 try: |
|
76 api.Factory().get_writer_for_class("") |
|
77 self.fail("Not existing writer creation succeeds?") |
|
78 except exceptions.ConePersistenceError,e: |
|
79 self.assertTrue(True) |
|
80 |
|
81 def test_get_reader_ok(self): |
|
82 r = api.Factory().get_reader_for_elem("Dummy") |
|
83 self.assertTrue(isinstance(r,TestPluginFactory.ConeDummyReader)) |
|
84 |
|
85 def test_get_reader_low(self): |
|
86 r = api.Factory().get_reader_for_elem("dummy") |
|
87 self.assertTrue(isinstance(r,TestPluginFactory.ConeDummyReader)) |
|
88 |
|
89 def test_get_reader_upper(self): |
|
90 r = api.Factory().get_reader_for_elem("DUMMY") |
|
91 self.assertTrue(isinstance(r,TestPluginFactory.ConeDummyReader)) |
|
92 |
|
93 def test_get_writer_ok(self): |
|
94 r = api.Factory().get_writer_for_class("Dummy") |
|
95 self.assertTrue(isinstance(r,TestPluginFactory.ConeDummyWriter)) |