1 |
frank |
915 |
# Copyright (c) 2002 by Intevation GmbH |
2 |
|
|
# Authors: |
3 |
|
|
# Frank Koormann <[email protected]> |
4 |
|
|
# |
5 |
|
|
# This program is free software under the GPL (>=v2) |
6 |
|
|
# Read the file COPYING coming with Thuban for details. |
7 |
|
|
|
8 |
|
|
""" |
9 |
|
|
Test the Thuban export calculations |
10 |
|
|
""" |
11 |
|
|
|
12 |
|
|
__version__ = "$Revision$" |
13 |
|
|
# $Source$ |
14 |
|
|
# $Id$ |
15 |
|
|
|
16 |
|
|
from Thuban import _ |
17 |
|
|
|
18 |
|
|
import unittest |
19 |
|
|
import os |
20 |
|
|
|
21 |
|
|
import support |
22 |
|
|
support.initthuban() |
23 |
|
|
|
24 |
|
|
from Thuban.UI.view import OutputTransform |
25 |
|
|
|
26 |
|
|
class TestScalebar(unittest.TestCase, support.FloatComparisonMixin): |
27 |
|
|
|
28 |
|
|
"""Test cases for the Thuban export calculations |
29 |
|
|
""" |
30 |
|
|
|
31 |
|
|
def test_OutputTransform(self): |
32 |
|
|
"""Test MapCanvas.OutputTransform().""" |
33 |
|
|
|
34 |
|
|
scale, offset, mapregion = OutputTransform(1.0, (0,0),(200, 100), (200,100)) |
35 |
|
|
self.assertFloatEqual(0.3, scale) |
36 |
|
|
self.assertFloatSeqEqual((0.0, 0.0), offset) |
37 |
|
|
self.assertFloatSeqEqual((20.0, 20.0, 80.0, 80.0), mapregion) |
38 |
|
|
|
39 |
|
|
scale, offset, mapregion = OutputTransform(1.0, (0,0),(200, 100), (100,200)) |
40 |
|
|
self.assertFloatEqual(0.16, scale) |
41 |
|
|
self.assertFloatSeqEqual((0.0, 0.0), offset) |
42 |
|
|
self.assertFloatSeqEqual((20.0, 20.0, 52.0, 52.0), mapregion) |
43 |
|
|
|
44 |
|
|
scale, offset, mapregion = OutputTransform(1.0, (5,5),(200, 100), (100,100)) |
45 |
|
|
self.assertFloatEqual(0.16, scale) |
46 |
|
|
self.assertFloatSeqEqual((0.8, 0.8), offset) |
47 |
|
|
self.assertFloatSeqEqual((20.0, 20.0, 52.0, 52.0), mapregion) |
48 |
|
|
|
49 |
|
|
scale, offset, mapregion = OutputTransform(1.0, (0,0),(200, 100), (200,200)) |
50 |
|
|
self.assertFloatEqual(0.52, scale) |
51 |
|
|
self.assertFloatSeqEqual((0.0, 0.0), offset) |
52 |
|
|
self.assertFloatSeqEqual((20, 20, 124.0, 124.0), mapregion) |
53 |
|
|
|
54 |
|
|
|
55 |
|
|
if __name__ == "__main__": |
56 |
|
|
unittest.main() |