Example #1
0
class TestFormatting(object):
    """Test formatting strings and caching in running mode.

    """

    def setup(self):
        self.root = RootTask()
        database = self.root.database
        database.set_value('root', 'val1', 1)
        database.create_node('root', 'node1')
        database.set_value('root/node1', 'val2', 10.0)
        database.add_access_exception('root', 'root/node1', 'val2')

    def test_formatting_editing_mode1(self):
        """Test formatting values with text on both sides of expression.

        """
        test = 'progress is {val1}/{val2}, it is good.'
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 1/10.0, it is good.'
        assert not self.root._format_cache

    def test_formatting_editing_mode2(self):
        """Test formatting values with text only on the left of expression.

        """
        test = 'progress is {val1}/{val2}'
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 1/10.0'
        assert not self.root._format_cache

    def test_formatting_editing_mode3(self):
        """Test formatting values with text only on the right of expression.

        """
        test = '{val1}/{val2}, it is good.'
        formatted = self.root.format_string(test)
        assert formatted == '1/10.0, it is good.'
        assert not self.root._format_cache

    def test_formatting_editing_mode4(self):
        """Test formatting values with no other text.

        """
        test = '{val1}/{val2}'
        formatted = self.root.format_string(test)
        assert formatted == '1/10.0'
        assert not self.root._format_cache

    def test_formatting_editing_mode5(self):
        """Test formatting when there is only text.

        """
        test = 'test'
        formatted = self.root.format_string(test)
        assert formatted == 'test'
        assert not self.root._format_cache

    def test_formatting_running_mode1(self):
        """Test formatting values with text on both sides of expression.

        """
        self.root.database.prepare_to_run()
        test = 'progress is {val1}/{val2}, it is good.'
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 1/10.0, it is good.'
        assert self.root._format_cache
        assert test in self.root._format_cache
        self.root.database.set_value('root', 'val1', 2)
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 2/10.0, it is good.'

    def test_formatting_running_mode2(self):
        """Test formatting values with text only on the left of expression.

        """
        self.root. database.prepare_to_run()
        test = 'progress is {val1}/{val2}'
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 1/10.0'
        assert self.root._format_cache
        assert test in self.root._format_cache
        self.root.database.set_value('root', 'val1', 2)
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 2/10.0'

    def test_formatting_running_mode3(self):
        """Test formatting values with text only on the right of expression.

        """
        self.root.database.prepare_to_run()
        test = '{val1}/{val2}, it is good.'
        formatted = self.root.format_string(test)
        assert formatted == '1/10.0, it is good.'
        assert self.root._format_cache
        assert test in self.root._format_cache
        self.root.database.set_value('root', 'val1', 2)
        formatted = self.root.format_string(test)
        assert formatted == '2/10.0, it is good.'

    def test_formatting_running_mode4(self):
        """Test formatting values with no other text.

        """
        self.root.database.prepare_to_run()
        test = '{val1}/{val2}'
        formatted = self.root.format_string(test)
        assert formatted == '1/10.0'
        assert self.root._format_cache
        assert test in self.root._format_cache
        self.root.database.set_value('root', 'val1', 2)
        formatted = self.root.format_string(test)
        assert formatted == '2/10.0'

    def test_formatting_running_mode5(self):
        """Test formatting when there is only text.

        """
        self.root.database.prepare_to_run()
        test = 'test'
        formatted = self.root.format_string(test)
        assert formatted == 'test'
        assert self.root._format_cache
        assert test in self.root._format_cache
Example #2
0
class TestFormatting(object):
    """Test formatting strings and caching in running mode.

    """
    def setup(self):
        self.root = RootTask()
        database = self.root.database
        database.set_value('root', 'val1', 1)
        database.create_node('root', 'node1')
        database.set_value('root/node1', 'val2', 10.0)
        database.add_access_exception('root', 'root/node1', 'val2')

    def test_formatting_editing_mode1(self):
        """Test formatting values with text on both sides of expression.

        """
        test = 'progress is {val1}/{val2}, it is good.'
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 1/10.0, it is good.'
        assert not self.root._format_cache

    def test_formatting_editing_mode2(self):
        """Test formatting values with text only on the left of expression.

        """
        test = 'progress is {val1}/{val2}'
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 1/10.0'
        assert not self.root._format_cache

    def test_formatting_editing_mode3(self):
        """Test formatting values with text only on the right of expression.

        """
        test = '{val1}/{val2}, it is good.'
        formatted = self.root.format_string(test)
        assert formatted == '1/10.0, it is good.'
        assert not self.root._format_cache

    def test_formatting_editing_mode4(self):
        """Test formatting values with no other text.

        """
        test = '{val1}/{val2}'
        formatted = self.root.format_string(test)
        assert formatted == '1/10.0'
        assert not self.root._format_cache

    def test_formatting_editing_mode5(self):
        """Test formatting when there is only text.

        """
        test = 'test'
        formatted = self.root.format_string(test)
        assert formatted == 'test'
        assert not self.root._format_cache

    def test_formatting_running_mode1(self):
        """Test formatting values with text on both sides of expression.

        """
        self.root.database.prepare_to_run()
        test = 'progress is {val1}/{val2}, it is good.'
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 1/10.0, it is good.'
        assert self.root._format_cache
        assert test in self.root._format_cache
        self.root.database.set_value('root', 'val1', 2)
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 2/10.0, it is good.'

    def test_formatting_running_mode2(self):
        """Test formatting values with text only on the left of expression.

        """
        self.root.database.prepare_to_run()
        test = 'progress is {val1}/{val2}'
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 1/10.0'
        assert self.root._format_cache
        assert test in self.root._format_cache
        self.root.database.set_value('root', 'val1', 2)
        formatted = self.root.format_string(test)
        assert formatted == 'progress is 2/10.0'

    def test_formatting_running_mode3(self):
        """Test formatting values with text only on the right of expression.

        """
        self.root.database.prepare_to_run()
        test = '{val1}/{val2}, it is good.'
        formatted = self.root.format_string(test)
        assert formatted == '1/10.0, it is good.'
        assert self.root._format_cache
        assert test in self.root._format_cache
        self.root.database.set_value('root', 'val1', 2)
        formatted = self.root.format_string(test)
        assert formatted == '2/10.0, it is good.'

    def test_formatting_running_mode4(self):
        """Test formatting values with no other text.

        """
        self.root.database.prepare_to_run()
        test = '{val1}/{val2}'
        formatted = self.root.format_string(test)
        assert formatted == '1/10.0'
        assert self.root._format_cache
        assert test in self.root._format_cache
        self.root.database.set_value('root', 'val1', 2)
        formatted = self.root.format_string(test)
        assert formatted == '2/10.0'

    def test_formatting_running_mode5(self):
        """Test formatting when there is only text.

        """
        self.root.database.prepare_to_run()
        test = 'test'
        formatted = self.root.format_string(test)
        assert formatted == 'test'
        assert self.root._format_cache
        assert test in self.root._format_cache