/[thuban]/branches/WIP-pyshapelib-bramz/test/test_scalebar.py
ViewVC logotype

Annotation of /branches/WIP-pyshapelib-bramz/test/test_scalebar.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 916 - (hide annotations)
Fri May 16 16:26:18 2003 UTC (21 years, 9 months ago) by frank
Original Path: trunk/thuban/test/test_scalebar.py
File MIME type: text/x-python
File size: 2879 byte(s)
Made test executable as standalone.

1 frank 863 # 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 scalebar 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 frank 868 from Thuban.Model.scalebar import deriveInterval, roundInterval
25 frank 863
26     class TestScalebar(unittest.TestCase, support.FloatComparisonMixin):
27    
28     """Test cases for the Thuban scalebar calculations
29     """
30    
31     def test_deriveInterval(self):
32     """Test scalebar.deriveInterval()"""
33    
34 frank 868 # Zero savety
35     interval, unit = deriveInterval(100, 0.0)
36     self.assertEquals(interval, -1)
37     self.assertEquals(unit, '')
38 frank 863
39 frank 868 # meters
40     interval, unit = deriveInterval(100, 0.5)
41     self.assertEquals(interval, 200)
42     self.assertEquals(unit, 'm')
43    
44     # kilometer conversion
45     interval, unit = deriveInterval(100, 0.05)
46     self.assertEquals(interval, 2)
47     self.assertEquals(unit, 'km')
48    
49 frank 863 def test_roundInterval(self):
50     """Test scalebar.roundInterval()"""
51 frank 868
52     # 0.0005
53     interval, label = roundInterval(0.000545943795)
54     self.assertFloatEqual(interval, 0.0005)
55     self.assertEquals(label, '0.0005')
56    
57     # 0.005
58     interval, label = roundInterval(0.00545943795)
59     self.assertFloatEqual(interval, 0.005)
60     self.assertEquals(label, '0.005')
61    
62     # 0.05
63     interval, label = roundInterval(0.0545943795)
64     self.assertFloatEqual(interval, 0.05)
65     self.assertEquals(label, '0.05')
66    
67     # 0.5
68     interval, label = roundInterval(0.545943795)
69     self.assertFloatEqual(interval, 0.5)
70     self.assertEquals(label, '0.5')
71    
72     # 5
73     interval, label = roundInterval(5.45943795)
74     self.assertFloatEqual(interval, 5)
75     self.assertEquals(label, '5')
76    
77     # 50
78     interval, label = roundInterval(54.5943795)
79     self.assertFloatEqual(interval, 50)
80     self.assertEquals(label, '50')
81    
82     # 500
83     interval, label = roundInterval(545.943795)
84     self.assertFloatEqual(interval, 500)
85     self.assertEquals(label, '500')
86    
87     # 5000
88     interval, label = roundInterval(5459.43795)
89     self.assertFloatEqual(interval, 5000)
90     self.assertEquals(label, '5000')
91    
92     # 50000
93     interval, label = roundInterval(54594.3795)
94     self.assertFloatEqual(interval, 50000)
95     self.assertEquals(label, '50000')
96    
97     # 500000
98     interval, label = roundInterval(545943.795)
99     self.assertFloatEqual(interval, -1)
100     self.assertEquals(label, '')
101 frank 916
102     if __name__ == "__main__":
103     unittest.main()
104    

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26