/usr/lib/python2.7/dist-packages/fabio/test/test_file_series.py is in python-fabio 0.3.0+dfsg-1build1.
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 129 130 131 132 133 134 135 136 | #!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# Project: Fable Input Output
# https://github.com/kif/fabio
#
# Copyright (C) European Synchrotron Radiation Facility, Grenoble, France
#
# Principal author: Jérôme Kieffer (Jerome.Kieffer@ESRF.eu)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
"""
test cases for fileseries
28/11/2014
"""
from __future__ import print_function, with_statement, division, absolute_import
import unittest
import sys
import os
import numpy
import gzip
import bz2
if __name__ == '__main__':
import pkgutil
__path__ = pkgutil.extend_path([os.path.dirname(__file__)], "fabio.test")
from .utilstest import UtilsTest
logger = UtilsTest.get_logger(__file__)
fabio = sys.modules["fabio"]
from fabio.file_series import numbered_file_series, file_series
class TestRandomSeries(unittest.TestCase):
"""arbitrary series"""
def setUp(self):
"""sets up"""
self.fso = file_series(["first", "second", "last"])
def testfirst(self):
"""check first"""
self.assertEqual("first", self.fso.first())
def testlast(self):
"""check first"""
self.assertEqual("last", self.fso.last())
def testjump(self):
"""check jump"""
self.assertEqual("second", self.fso.jump(1))
class TestEdfNumbered(unittest.TestCase):
"""
Typical sequence of edf files
"""
def setUp(self):
""" note extension has the . in it"""
self.fso = numbered_file_series("mydata", 0, 10005, ".edf")
def testfirst(self):
""" first in series"""
self.assertEqual(self.fso.first(), "mydata0000.edf")
def testlast(self):
""" last in series"""
self.assertEqual(self.fso.last(), "mydata10005.edf")
def testnext(self):
""" check all in order """
mylist = ["mydata%04d.edf" % (i) for i in range(0, 10005)]
i = 1
while i < len(mylist):
self.assertEqual(mylist[i], self.fso.next())
i += 1
def testprevious(self):
""" check all in order """
mylist = ["mydata%04d.edf" % (i) for i in range(0, 10005)]
i = 10003
self.fso.jump(10004)
while i > 0:
self.assertEqual(mylist[i], self.fso.previous())
i -= 1
def testprevjump(self):
"""check current"""
self.fso.jump(9999)
self.assertEqual("mydata9999.edf", self.fso.current())
self.assertEqual("mydata9998.edf", self.fso.previous())
def testnextjump(self):
"""check current"""
self.fso.jump(9999)
self.assertEqual("mydata9999.edf", self.fso.current())
self.assertEqual("mydata10000.edf", self.fso.next())
def testlen(self):
"""check len"""
self.assertEqual(self.fso.len(), 10006) # +1 for 0000
def suite():
testsuite = unittest.TestSuite()
testsuite.addTest(TestRandomSeries("testfirst"))
testsuite.addTest(TestRandomSeries("testlast"))
testsuite.addTest(TestRandomSeries("testjump"))
testsuite.addTest(TestEdfNumbered("testfirst"))
testsuite.addTest(TestEdfNumbered("testprevious"))
testsuite.addTest(TestEdfNumbered("testlast"))
testsuite.addTest(TestEdfNumbered("testnext"))
testsuite.addTest(TestEdfNumbered("testprevjump"))
testsuite.addTest(TestEdfNumbered("testnextjump"))
testsuite.addTest(TestEdfNumbered("testlen"))
return testsuite
if __name__ == '__main__':
runner = unittest.TextTestRunner()
runner.run(suite())
|