summaryrefslogtreecommitdiff
path: root/tests/settings
diff options
context:
space:
mode:
authorDylan Baker <baker.dylan.c@gmail.com>2017-08-17 12:34:50 -0700
committerGitHub <noreply@github.com>2017-08-17 12:34:50 -0700
commit188d79a0189b480656542a09be348fcbf506f33d (patch)
treead5b1a09e19056905b020459ce50b50d65e2679b /tests/settings
parentadc4fbb3595b059ae98b683fe57add578c3c2b86 (diff)
parent6d20c4ae8f1130bd29b14ea52014b394e0a1c4a4 (diff)
Merge pull request #1095 from dcbaker/submit/use-default-theme-if-no-config
Load default settings even if a user config doesn't exist
Diffstat (limited to 'tests/settings')
-rw-r--r--tests/settings/manager_test.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/settings/manager_test.py b/tests/settings/manager_test.py
index e0c48444..0ce29259 100644
--- a/tests/settings/manager_test.py
+++ b/tests/settings/manager_test.py
@@ -63,6 +63,37 @@ class TestSettingsManager(unittest.TestCase):
actual = manager.get_notmuch_setting('maildir', 'synchronize_flags')
self.assertTrue(actual)
+ def test_read_config_doesnt_exist(self):
+ """If there is not an alot config things don't break.
+
+ This specifically tests for issue #1094, which is caused by the
+ defaults not being loaded if there isn't an alot config files, and thus
+ calls like `get_theming_attribute` fail with strange exceptions.
+ """
+ with tempfile.NamedTemporaryFile(delete=False) as f:
+ f.write(textwrap.dedent("""\
+ [maildir]
+ synchronize_flags = true
+ """))
+ self.addCleanup(os.unlink, f.name)
+ manager = SettingsManager(notmuch_rc=f.name)
+
+ manager.get_theming_attribute('global', 'body')
+
+ def test_read_notmuch_config_doesnt_exist(self):
+ with tempfile.NamedTemporaryFile(delete=False) as f:
+ f.write(textwrap.dedent("""\
+ [accounts]
+ [[default]]
+ realname = That Guy
+ address = thatguy@example.com
+ """))
+ self.addCleanup(os.unlink, f.name)
+ manager = SettingsManager(alot_rc=f.name)
+
+ setting = manager.get_notmuch_setting('foo', 'bar')
+ self.assertIsNone(setting)
+
class TestSettingsManagerGetAccountByAddress(utilities.TestCaseClassCleanup):
"""Test the get_account_by_address helper."""