Edgewall Software

Ticket #1330: trac-admin-test-in-memory.patch

File trac-admin-test-in-memory.patch, 1.8 KB (added by Mark Rowe <edgewall.com@…>, 4 years ago)
  • trac/scripts/admin.py

    === trac/scripts/admin.py
    ==================================================================
     
    8484    ## Environment methods 
    8585    ## 
    8686 
    87     def env_set(self, envname): 
     87    def env_set(self, envname, env=None): 
    8888        self.envname = envname 
    8989        self.prompt = "Trac [%s]> " % self.envname 
     90        if env is not None: 
     91            self.__env = env 
    9092 
    9193    def env_check(self): 
    9294        try: 
  • trac/scripts/tests/admin.py

    === trac/scripts/tests/admin.py
    ==================================================================
     
    8686    def setUp(self): 
    8787        EnvironmentTestBase.setUp(self) 
    8888        self._admin = admin.TracAdmin() 
    89         self._admin.env_set(self._get_envpath()) 
     89        self._admin.env_set(self._get_envpath(), self.env) 
    9090 
    9191    def _execute(self, cmd): 
    9292        try: 
  • trac/tests/environment.py

    === trac/tests/environment.py
    ==================================================================
     
    1 from trac import db_default 
     1from trac import db_default, test 
    22from trac.Environment import Environment 
    33 
    44import os 
     
    66import tempfile 
    77import shutil 
    88 
     9""" 
     10A subclass of trac.Environment that keeps its' DB in memory. 
     11""" 
     12class InMemoryEnvironment(Environment): 
     13    def get_db_cnx(self): 
     14        if not hasattr(self, '_db'): 
     15            self._db = test.InMemoryDatabase() 
     16        return self._db 
    917 
    1018class EnvironmentTestBase: 
    1119 
    1220    def setUp(self): 
    13         self.env = Environment(self._get_envpath(), create=1) 
     21        self.env = InMemoryEnvironment(self._get_envpath(), create=1) 
    1422        self.env.insert_default_data() 
    1523        self.db = self.env.get_db_cnx() 
    1624