This file is indexed.

/usr/lib/python2.7/dist-packages/trytond/tests/test_modelsingleton.py is in tryton-server 3.4.0-3+deb8u3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# -*- coding: utf-8 -*-
#This file is part of Tryton.  The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
import unittest
from datetime import datetime
from trytond.tests.test_tryton import POOL, DB_NAME, USER, CONTEXT, \
        install_module
from trytond.transaction import Transaction


class ModelSingletonTestCase(unittest.TestCase):
    'Test ModelSingleton'

    def setUp(self):
        install_module('tests')
        self.singleton = POOL.get('test.singleton')

    def test0010read(self):
        'Test read method'
        with Transaction().start(DB_NAME, USER,
                context=CONTEXT) as transaction:
            singleton, = self.singleton.read([1], ['name'])
            self.assert_(singleton['name'] == 'test')
            self.assert_(singleton['id'] == 1)

            singleton, = self.singleton.read([1], ['name'])
            self.assert_(singleton['name'] == 'test')
            self.assert_(singleton['id'] == 1)

            singleton, = self.singleton.read([1], [
                'create_uid',
                'create_uid.rec_name',
                'create_date',
                'write_uid',
                'write_date',
                ])
            self.assertEqual(singleton['create_uid'], USER)
            self.assertEqual(singleton['create_uid.rec_name'], 'Administrator')
            self.assert_(isinstance(singleton['create_date'], datetime))
            self.assertEqual(singleton['write_uid'], None)
            self.assertEqual(singleton['write_date'], None)

            transaction.cursor.rollback()

    def test0020create(self):
        'Test create method'
        with Transaction().start(DB_NAME, USER,
                context=CONTEXT) as transaction:
            singleton, = self.singleton.create([{'name': 'bar'}])
            self.assert_(singleton)
            self.assertEqual(singleton.name, 'bar')

            singleton2, = self.singleton.create([{'name': 'foo'}])
            self.assertEqual(singleton2, singleton)

            self.assertEqual(singleton.name, 'foo')

            singletons = self.singleton.search([])
            self.assertEqual(singletons, [singleton])

            transaction.cursor.rollback()

    def test0030copy(self):
        'Test copy method'
        with Transaction().start(DB_NAME, USER,
                context=CONTEXT) as transaction:
            singleton, = self.singleton.search([])

            singleton2, = self.singleton.copy([singleton])
            self.assertEqual(singleton2, singleton)

            singletons = self.singleton.search([])
            self.assertEqual(len(singletons), 1)

            singleton3, = self.singleton.copy([singleton], {'name': 'bar'})
            self.assertEqual(singleton3, singleton)

            singletons = self.singleton.search([])
            self.assertEqual(len(singletons), 1)

            transaction.cursor.rollback()

    def test0040default_get(self):
        'Test default_get method'
        with Transaction().start(DB_NAME, USER,
                context=CONTEXT) as transaction:
            default = self.singleton.default_get(['name'])
            self.assertEqual(default, {'name': 'test'})

            default = self.singleton.default_get(['create_uid'])
            self.assertEqual(len(default), 2)

            default = self.singleton.default_get(['create_uid'],
                    with_rec_name=False)
            self.assertEqual(len(default), 1)

            self.singleton.create([{'name': 'bar'}])

            default = self.singleton.default_get(['name'])
            self.assertEqual(default, {'name': 'bar'})

            default = self.singleton.default_get(['create_uid'])
            self.assertEqual(len(default), 2)

            default = self.singleton.default_get(['create_uid'],
                    with_rec_name=False)
            self.assertEqual(len(default), 1)

            transaction.cursor.rollback()

    def test0050search(self):
        'Test search method'
        with Transaction().start(DB_NAME, USER,
                context=CONTEXT) as transaction:
            singletons = self.singleton.search([])
            self.assertEqual(map(int, singletons), [1])

            singletons = self.singleton.search([])
            self.assertEqual(map(int, singletons), [1])

            count = self.singleton.search([], count=True)
            self.assertEqual(count, 1)

            transaction.cursor.rollback()


def suite():
    return unittest.TestLoader().loadTestsFromTestCase(ModelSingletonTestCase)