view test/mocknull.py @ 3852:0dd05c9e5fff

New test for linking of non-existing and existing properties via a form. The idea of the test is to track all create and set operations and afterwards compare that they occurred as expected. Sorry for the peculiar syntax for the expected updates to the database -- this should be one line for each update... An a bug-fix: I've reverted a change from April in roundup/cgi/actions.py that broke linking of messages to issues. The tests above now catch that. I couldn't figure out what the change was meant for, sorry if I broke something here.
author Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
date Tue, 08 May 2007 20:54:56 +0000
parents 79fd8537ae3b
children 3757449e00c4
line wrap: on
line source


class MockNull:
    def __init__(self, **kwargs):
        for key, value in kwargs.items():
            self.__dict__[key] = value

    def __call__(self, *args, **kwargs): return MockNull()
    def __getattr__(self, name):
        # This allows assignments which assume all intermediate steps are Null
        # objects if they don't exist yet.
        #
        # For example (with just 'client' defined):
        #
        # client.db.config.TRACKER_WEB = 'BASE/'
        self.__dict__[name] = MockNull()
        return getattr(self, name)

    def __getitem__(self, key): return self
    def __nonzero__(self): return 0
    def __str__(self): return ''
    def __repr__(self): return '<MockNull 0x%x>'%id(self)
    def gettext(self, str): return str
    _ = gettext

Roundup Issue Tracker: http://roundup-tracker.org/