Beispiel #1
0
 def either(self, default_key, *values):
     """Fallback to the value of a configuration key if none of the
     `*values` are true."""
     return first(None, [
         first(None, values),
         starpromise(self.conf.get, default_key),
     ])
Beispiel #2
0
    def either(self, default_key, *defaults):
        """Get key from configuration or use default values.

        Fallback to the value of a configuration key if none of the
        `*values` are true.
        """
        return first(None, [
            first(None, defaults), starpromise(self.conf.get, default_key),
        ])
Beispiel #3
0
    def either(self, default_key, *defaults):
        """Get key from configuration or use default values.

        Fallback to the value of a configuration key if none of the
        `*values` are true.
        """
        return first(None, [
            first(None, defaults), starpromise(self.conf.get, default_key),
        ])
Beispiel #4
0
def test_first():
    iterations = [0]

    def predicate(value):
        iterations[0] += 1
        if value == 5:
            return True
        return False

    assert first(predicate, range(10)) == 5
    assert iterations[0] == 6

    iterations[0] = 0
    assert first(predicate, range(10, 20)) is None
    assert iterations[0] == 10
Beispiel #5
0
    def test_first(self):
        iterations = [0]

        def predicate(value):
            iterations[0] += 1
            if value == 5:
                return True
            return False

        self.assertEqual(5, first(predicate, range(10)))
        self.assertEqual(iterations[0], 6)

        iterations[0] = 0
        self.assertIsNone(first(predicate, range(10, 20)))
        self.assertEqual(iterations[0], 10)
Beispiel #6
0
    def test_first(self):
        iterations = [0]

        def predicate(value):
            iterations[0] += 1
            if value == 5:
                return True
            return False

        self.assertEqual(5, first(predicate, range(10)))
        self.assertEqual(iterations[0], 6)

        iterations[0] = 0
        self.assertIsNone(first(predicate, range(10, 20)))
        self.assertEqual(iterations[0], 10)
Beispiel #7
0
 def first(self, *keys):
     return first(None, (self.get(key) for key in keys))
Beispiel #8
0
 def either(self, default_key, *values):
     """Fallback to the value of a configuration key if none of the
     `*values` are true."""
     return first(None, values) or self.conf.get(default_key)
Beispiel #9
0
 def either(self, default_key, *values):
     """Fallback to the value of a configuration key if none of the
     `*values` are true."""
     return first(None, values) or self.conf.get(default_key)
Beispiel #10
0
 def either(self, default_key, *values):
     """Fallback to the value of a configuration key if none of the
     `*values` are true."""
     return first(None, [
         first(None, values), starpromise(self.conf.get, default_key),
     ])
Beispiel #11
0
 def autodetect_env(self, apply=methodcaller('autodetect')):
     # type: (Callable) -> Any
     return first(apply, map(symbol_by_name, self.environments))()
Beispiel #12
0
 def first(self, *keys):
     # type: (*str) -> Any
     return first(None, (self.get(key) for key in keys))
Beispiel #13
0
 def autodetect_env(self, apply=methodcaller('autodetect')):
     return first(apply, map(symbol_by_name, self.environments))()
Beispiel #14
0
 def autodetect_env(self, apply=methodcaller('autodetect')):
     # type: (Callable) -> Any
     return first(apply, list(map(symbol_by_name, self.environments)))()