コード例 #1
0
 def setUp(self):
     """Set up test fixture
     """
     self.sentinel_a = sentinel.create('a')
     self.sentinel_b = sentinel.create('b', 'b_desc')
     self.sentinel_a2 = sentinel.create('a')
     self.sentinel_b2 = sentinel.create('b', 'b_desc')
コード例 #2
0
ファイル: functional.py プロジェクト: danorama/pyexperiment
Written by Peter Duerr
"""

from __future__ import print_function
from __future__ import unicode_literals
from __future__ import division
from __future__ import absolute_import

from pyexperiment.utils import sentinel

if True:  # Ugly, but makes pylint happy
    # pylint:disable=import-error
    from six.moves import zip_longest


NONE = sentinel.create("NONE", "Nothing")
"""Sentinel value for the functional
"""


def shorter(iter1, iter2):
    """Returns True if iterator 1 is shorter than iterator 2
    """
    for item1, item2 in zip_longest(iter1, iter2, fillvalue=NONE):
        if item2 is not NONE:
            if item1 is NONE:
                return True
        else:
            return False

コード例 #3
0
Written by Peter Duerr
"""

from __future__ import print_function
from __future__ import unicode_literals
from __future__ import division
from __future__ import absolute_import

from pyexperiment.utils import sentinel

if True:  # Ugly, but makes pylint happy
    # pylint:disable=import-error
    from six.moves import zip_longest

NONE = sentinel.create('NONE', 'Nothing')
"""Sentinel value for the functional
"""


def shorter(iter1, iter2):
    """Returns True if iterator 1 is shorter than iterator 2
    """
    for item1, item2 in zip_longest(iter1, iter2, fillvalue=NONE):
        if item2 is not NONE:
            if item1 is NONE:
                return True
        else:
            return False

コード例 #4
0
ファイル: State.py プロジェクト: danorama/pyexperiment
import lockfile

from pyexperiment.utils.Singleton import Singleton
from pyexperiment.utils.Singleton import delegate_singleton
from pyexperiment.utils.HierarchicalMapping \
    import HierarchicalOrderedDict
from pyexperiment.utils import sentinel
from pyexperiment.Logger import TimingLogger
from pyexperiment.utils.functional import starts_with

log = delegate_singleton(TimingLogger)  # pylint: disable=invalid-name
"""Pyexperiment's logger, re-wrapped here to avoid cyclical dependency
"""


DELETED = sentinel.create('DELETED', 'Deleted State')
UNLOADED = sentinel.create('UNLOADED', 'Unloaded State')


class State(Singleton,  # pylint: disable=too-many-ancestors
            HierarchicalOrderedDict):
    """Represents persistent state of an experiment.
    """
    def __init__(self, filename=None):
        """Initializer
        """
        super(State, self).__init__()

        # Keep track of changed values
        self.changed = set()
        self.filename = filename
コード例 #5
0
 def test_sentinel_description(self):
     """Test the repr of the sentinel
     """
     sen = sentinel.create('A', 'description')
     self.assertEqual(repr(sen), 'description')
コード例 #6
0
ファイル: State.py プロジェクト: olivierh59500/pyexperiment
from functools import partial
import lockfile

from pyexperiment.utils.Singleton import Singleton
from pyexperiment.utils.Singleton import delegate_singleton
from pyexperiment.utils.HierarchicalMapping \
    import HierarchicalOrderedDict
from pyexperiment.utils import sentinel
from pyexperiment.Logger import TimingLogger
from pyexperiment.utils.functional import starts_with

log = delegate_singleton(TimingLogger)  # pylint: disable=invalid-name
"""Pyexperiment's logger, re-wrapped here to avoid cyclical dependency
"""

DELETED = sentinel.create('DELETED', 'Deleted State')
UNLOADED = sentinel.create('UNLOADED', 'Unloaded State')


class State(
        Singleton,  # pylint: disable=too-many-ancestors
        HierarchicalOrderedDict):
    """Represents persistent state of an experiment.
    """
    def __init__(self, filename=None):
        """Initializer
        """
        super(State, self).__init__()

        # Keep track of changed values
        self.changed = set()