view test/test_memorydb.py @ 5133:85eee1f236b2

I had an incorrect fix for issue2550601. Changed schema to define class patches not patch. Changed commented out patches section in bug.item.html to use patches-1 an not patch-1 as a result of schema changes. The show open Milestones link had a leak of the @group value. If you clicked on show open tasks or show open bugs they group by priority. The url being formed for show open milestones was inheriting the @group if you were on an index page for bugs or milestones. Explicit set the @group to status (which a milestone does have) prevents the @group=priority from being applied to a milestone index page which results in a red error banner stating priority is an invalid param for milestones. ./demo.py -t devel now runs without obvious breakage.
author John Rouillard <rouilj@ieee.org>
date Mon, 04 Jul 2016 18:19:51 -0400
parents 364c54991861
children 62de601bdf6f
line wrap: on
line source

import unittest, os, shutil, time

from roundup import hyperdb

from db_test_base import DBTest, ROTest, SchemaTest, config, setupSchema
import memorydb

class memorydbOpener:
    module = memorydb

    def nuke_database(self):
        # really kill it
        self.db = None

    db = None
    def open_database(self):
        if self.db is None:
            self.db = self.module.Database(config, 'admin')
        return self.db

    def setUp(self):
        self.open_database()
        setupSchema(self.db, 1, self.module)

    def tearDown(self):
        if self.db is not None:
            self.db.close()

    # nuke and re-create db for restore
    def nukeAndCreate(self):
        self.db.close()
        self.nuke_database()
        self.db = self.module.Database(config, 'admin')
        setupSchema(self.db, 0, self.module)


class memorydbDBTest(memorydbOpener, DBTest, unittest.TestCase):
    pass


class memorydbROTest(memorydbOpener, ROTest, unittest.TestCase):
    def setUp(self):
        self.db = self.module.Database(config)
        setupSchema(self.db, 0, self.module)


class memorydbSchemaTest(memorydbOpener, SchemaTest, unittest.TestCase):
    pass


from session_common import DBMTest
class memorydbSessionTest(memorydbOpener, DBMTest, unittest.TestCase):
    def setUp(self):
        self.db = self.module.Database(config, 'admin')
        setupSchema(self.db, 1, self.module)
        self.sessions = self.db.sessions

# vim: set filetype=python ts=4 sw=4 et si


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