mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-07-07 20:06:36 +02:00
Config: No longer autovivifies
This commit is contained in:
parent
23ac9895ab
commit
63bbe857c8
3 changed files with 17 additions and 8 deletions
|
@ -554,14 +554,19 @@ bool Config::has (const std::string& key)
|
|||
// Return the configuration value given the specified key.
|
||||
std::string Config::get (const std::string& key)
|
||||
{
|
||||
return (*this)[key];
|
||||
auto found = find (key);
|
||||
if (found != end ())
|
||||
return found->second;
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
int Config::getInteger (const std::string& key)
|
||||
{
|
||||
if ((*this).find (key) != (*this).end ())
|
||||
return strtoimax ((*this)[key].c_str (), NULL, 10);
|
||||
auto found = find (key);
|
||||
if (found != end ())
|
||||
return strtoimax (found->second.c_str (), nullptr, 10);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -571,11 +576,12 @@ double Config::getReal (const std::string& key)
|
|||
{
|
||||
//NOTE: Backwards compatible handling of next coefficient.
|
||||
//TODO: Remove.
|
||||
if (key == "urgency.user.tag.next.coefficient" and has("urgency.next.coefficient"))
|
||||
return getReal("urgency.next.coefficient");
|
||||
if (key == "urgency.user.tag.next.coefficient" and has ("urgency.next.coefficient"))
|
||||
return getReal ("urgency.next.coefficient");
|
||||
|
||||
if ((*this).find (key) != (*this).end ())
|
||||
return strtod ((*this)[key].c_str (), NULL);
|
||||
auto found = find (key);
|
||||
if (found != end ())
|
||||
return strtod (found->second.c_str (), nullptr);
|
||||
|
||||
return 0.0;
|
||||
}
|
||||
|
@ -583,7 +589,8 @@ double Config::getReal (const std::string& key)
|
|||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Config::getBoolean (const std::string& key)
|
||||
{
|
||||
if ((*this).find (key) != (*this).end ())
|
||||
auto found = find (key);
|
||||
if (found != end ())
|
||||
{
|
||||
std::string value = Lexer::lowerCase ((*this)[key]);
|
||||
if (value == "t" || // TODO Deprecate
|
||||
|
|
|
@ -54,6 +54,7 @@ class TestShowCommand(TestCase):
|
|||
|
||||
def test_show_one_arg(self):
|
||||
"""Verify show command lists one result with an arg provided"""
|
||||
self.t.config("default.due", "tomorrow")
|
||||
code, out, err = self.t("show default.due")
|
||||
self.assertNotIn("default.command", out)
|
||||
self.assertIn("default.due", out)
|
||||
|
|
|
@ -51,6 +51,7 @@ class TestBaseUda(TestCase):
|
|||
class TestUdaCommand(TestBaseUda):
|
||||
def setUp(self):
|
||||
super(TestUdaCommand, self).setUp()
|
||||
self.t.config("uda.extra.type", "string")
|
||||
|
||||
def test_uda_command(self):
|
||||
"""The 'udas' command should list 'priority' and 'extra'"""
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue