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
|
# Portions Copyright (C) 2010, Manfred Moitzi under a BSD licence
from unittest import TestCase
import xlrd
from xlrd import open_workbook
from xlrd.book import Book
from xlrd.sheet import Sheet
from .helpers import from_sample
SHEETINDEX = 0
NROWS = 15
NCOLS = 13
class TestWorkbook(TestCase):
sheetnames = ['PROFILEDEF', 'AXISDEF', 'TRAVERSALCHAINAGE',
'AXISDATUMLEVELS', 'PROFILELEVELS']
def setUp(self):
self.book = open_workbook(from_sample('profiles.xls'))
def test_open_workbook(self):
self.assertTrue(isinstance(self.book, Book))
def test_nsheets(self):
self.assertEqual(self.book.nsheets, 5)
def test_sheet_by_name(self):
for name in self.sheetnames:
sheet = self.book.sheet_by_name(name)
self.assertTrue(isinstance(sheet, Sheet))
self.assertEqual(name, sheet.name)
def test_sheet_by_index(self):
for index in range(5):
sheet = self.book.sheet_by_index(index)
self.assertTrue(isinstance(sheet, Sheet))
self.assertEqual(sheet.name, self.sheetnames[index])
def test_sheets(self):
sheets = self.book.sheets()
for index, sheet in enumerate(sheets):
self.assertTrue(isinstance(sheet, Sheet))
self.assertEqual(sheet.name, self.sheetnames[index])
def test_sheet_names(self):
self.assertEqual(self.sheetnames, self.book.sheet_names())
def test_getitem_ix(self):
sheet = self.book[SHEETINDEX]
self.assertNotEqual(xlrd.empty_cell, sheet.cell(0, 0))
self.assertNotEqual(xlrd.empty_cell, sheet.cell(NROWS - 1, NCOLS - 1))
def test_getitem_name(self):
sheet = self.book[self.sheetnames[SHEETINDEX]]
self.assertNotEqual(xlrd.empty_cell, sheet.cell(0, 0))
self.assertNotEqual(xlrd.empty_cell, sheet.cell(NROWS - 1, NCOLS - 1))
def test_iter(self):
sheets = [sh.name for sh in self.book]
self.assertEqual(sheets, self.sheetnames)
|