~kelemeng/software-center/bug625859

« back to all changes in this revision

Viewing changes to test/test_database.py

  • Committer: Bazaar Package Importer
  • Author(s): Michael Vogt, Matthew McGowan, Olivier Tilloy, Jacob Johan Edwards, Ken van Dine, Julian Andres Klode, Kiwinote, Michael Vogt
  • Date: 2010-05-20 19:38:30 UTC
  • mfrom: (45.1.1 lucid-proposed)
  • Revision ID: james.westby@ubuntu.com-20100520193830-70p39gnpv29jhgnp
Tags: 2.1.0
[ Matthew McGowan ]
* merged lp:~mmcg069/software-center/backforward-redraw-fix
* make the overlaywithpixbuf cellrenderer inherit from a text
  cellrenderer, does away with the need to have 1px column in the
  appview for accessibility reasons.
  (lp:~mmcg069/software-center/overlay-w-pixbuf-tweak)
* add nice animation to pathbar elements 
  (lp:~mmcg069/software-center/pathbar-scroll-inn)

[ Olivier Tilloy ]
* fix LP: #564785:
  "each row has a progress bar (which itself never contains any text)"
* show download completion status (LP: #460888)
* add "bottom border" effect (LP: #439621)
* add "history" GUI that reads /var/log/apt/history.log
* Re-claim used memory after updating an existing AppStore with a 
  new one (LP: #577540)
* Fix the database update when run with a Turkish locale 
  (patch by M. Vefa Bicakci). LP: #581207
* Make buttons activate on mouse up, fix other inconsistencies
  in list view button operation (LP: #514835)

[ Jacob Johan Edwards ]
* merged lp:~j-johan-edwards/software-center/smooth_search, this 
  massively improves the search and stops it from flickering
  (LP: #570682)
* merged lp:~j-johan-edwards/software-center/action_bar that provides
  the foundation for the "custom packages list" branch
* merged lp:~j-johan-edwards/software-center/unbranded_icons to 
  provide a set of unbranded icons for e.g. Debian
* merged lp:~j-johan-edwards/software-center/custom_lists to 
  implement https://wiki.ubuntu.com/SoftwareCenter#Custom%20package%20lists

[ Ken van Dine ]
* allow sharing apps via gwibber and apturl 
  (lp:~ken-vandine/software-center/sharing)

[ Julian Andres Klode ]
* merged lp:~juliank/software-center/debian that include fixes and
  updates for the new python-apt 0.8 API

[ Kiwinote ]
* data/featured.menu.in:
  - Update featured applications list per Desktop team (LP: #548534)
  - Feature 'fretsonfire-game' rather than 'fretsonfire' (LP: #538646)
* softwarecenter/view/app.py:
  - Set correct sensitivity of 'edit > undo,redo,cut,copy,delete,select_all' 
    (LP: #439613, LP: #530194)

[ Michael Vogt ]
* softwarecenter/view/appview.py:
  - simplify application list buildup and improve responsiveness
* softwarecenter/view/*pane.py:
  - fix crash when ngettext is translated without %s format 
    (LP: #449053)
* add test/Makefile and ensure all tests are run in the bzr-buildpackage
  pre-build hook
* softwarecenter/db/database.py, softwarecenter/view/appdetailsview.py:
  - add "StoreDatabase.get_iconname()"  and use it
* softwarecenter/view/appview.py:
  - small cleanups
* softwarecenter/view/availablepane.py:
  - add iconnames when installing custom lists
* softwarecenter/view/pendingview.py:
  - look for "appname" and "pkgname" (in this order) when showing
    the progress information
* update about (LP: #566571)
* merged lp:~apulido/software-center/mago_fix (many thanks to Ara Pulido)
* data/unbranded-software-center.desktop.in:
  - add unbranded desktop file
* softwarecenter/distro/__init__.py:
  - add new "get_app_name", "get_app_description" methods for easier
    branding of downstreams

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/python
 
2
 
 
3
 
 
4
import sys
 
5
sys.path.insert(0,"../")
 
6
 
 
7
import apt
 
8
import unittest
 
9
 
 
10
from softwarecenter.db.database import StoreDatabase
 
11
from softwarecenter.enums import *
 
12
 
 
13
class testDatabase(unittest.TestCase):
 
14
    """ tests the store database """
 
15
 
 
16
    def setUp(self):
 
17
        # FIXME: create a fixture DB instead of using the system one
 
18
        # but for now that does not matter that much, only if we
 
19
        # call open the db is actually read and the path checked
 
20
        self.db = StoreDatabase("/var/cache/software-center/xapian", 
 
21
                                apt.Cache())
 
22
        #self.db.open()
 
23
 
 
24
    def test_comma_seperation(self):
 
25
        # normal
 
26
        querries = self.db._comma_expansion("apt,2vcard,7zip")
 
27
        self.assertEqual(len(querries), 3)
 
28
        # multiple identical
 
29
        querries = self.db._comma_expansion("apt,apt,apt")
 
30
        self.assertEqual(len(querries), 1)
 
31
        # too many commas
 
32
        querries = self.db._comma_expansion(",,,apt,xxx,,,")
 
33
        self.assertEqual(len(querries), 2)
 
34
        # invalid query
 
35
        querries = self.db._comma_expansion("??")
 
36
        self.assertEqual(querries, None)
 
37
 
 
38
if __name__ == "__main__":
 
39
    import logging
 
40
    logging.basicConfig(level=logging.DEBUG)
 
41
    unittest.main()