summaryrefslogtreecommitdiff
path: root/src/leap/base
diff options
context:
space:
mode:
authorkali <kali@leap.se>2012-12-12 03:29:31 +0900
committerkali <kali@leap.se>2012-12-12 04:23:39 +0900
commit04d423e2a89034dfb86fe305108162fd2a696079 (patch)
tree3d39b48495fbcfbfeab776af07558c345f4161cb /src/leap/base
parent18be85f13abc6bc94a3725950ec16ad1adec0ab8 (diff)
tests for openvpn options
and make the rest of tests pass after some changes in this branch (dirtyness in config files)
Diffstat (limited to 'src/leap/base')
-rw-r--r--src/leap/base/config.py23
-rw-r--r--src/leap/base/tests/test_providers.py8
2 files changed, 25 insertions, 6 deletions
diff --git a/src/leap/base/config.py b/src/leap/base/config.py
index 321fbdcd..b307ad05 100644
--- a/src/leap/base/config.py
+++ b/src/leap/base/config.py
@@ -126,14 +126,33 @@ class JSONLeapConfig(BaseLeapConfig):
# mandatory baseconfig interface
- def save(self, to=None):
- if self._config.is_dirty():
+ def save(self, to=None, force=False):
+ """
+ force param will skip the dirty check.
+ :type force: bool
+ """
+ # XXX this force=True does not feel to right
+ # but still have to look for a better way
+ # of dealing with dirtiness and the
+ # trick of loading remote config only
+ # when newer.
+
+ if force:
+ do_save = True
+ else:
+ do_save = self._config.is_dirty()
+
+ if do_save:
if to is None:
to = self.filename
folder, filename = os.path.split(to)
if folder and not os.path.isdir(folder):
mkdir_p(folder)
self._config.serialize(to)
+ return True
+
+ else:
+ return False
def load(self, fromfile=None, from_uri=None, fetcher=None,
force_download=False, verify=False):
diff --git a/src/leap/base/tests/test_providers.py b/src/leap/base/tests/test_providers.py
index 15c4ed58..d9604fab 100644
--- a/src/leap/base/tests/test_providers.py
+++ b/src/leap/base/tests/test_providers.py
@@ -8,7 +8,7 @@ import os
import jsonschema
-from leap import __branding as BRANDING
+#from leap import __branding as BRANDING
from leap.testing.basetest import BaseLeapTest
from leap.base import providers
@@ -33,8 +33,8 @@ class TestLeapProviderDefinition(BaseLeapTest):
self.domain = "testprovider.example.org"
self.definition = providers.LeapProviderDefinition(
domain=self.domain)
- self.definition.save()
- self.definition.load()
+ self.definition.save(force=True)
+ self.definition.load() # why have to load after save??
self.config = self.definition.config
def tearDown(self):
@@ -61,7 +61,7 @@ class TestLeapProviderDefinition(BaseLeapTest):
def test_provider_dump(self):
# check a good provider definition is dumped to disk
self.testfile = self.get_tempfile('test.json')
- self.definition.save(to=self.testfile)
+ self.definition.save(to=self.testfile, force=True)
deserialized = json.load(open(self.testfile, 'rb'))
self.maxDiff = None
self.assertEqual(deserialized, EXPECTED_DEFAULT_CONFIG)