3 |
# $Id$ |
# $Id$ |
4 |
# -------------------------------------------------------------------- |
# -------------------------------------------------------------------- |
5 |
# |
# |
6 |
# Copyright (c) 2005,2006 by Intevation GmbH |
# Copyright (c) 2005, 2006, 2007 by Intevation GmbH |
7 |
# Authors: |
# Authors: |
8 |
# Sascha Wilde <[email protected]> |
# Sascha Wilde <[email protected]> |
9 |
# |
# |
10 |
# This program is free software under the GPL (>=v2) |
# This program is free software under the GPL (>=v2) |
11 |
# Read the file COPYING coming with this package for details. |
# Read the file COPYING coming with this package for details. |
12 |
|
|
13 |
"""Unit Test f�r die Lohnsteuerberechnung in LST2006. Benutzt die |
"""Unit Test f�r die Lohnsteuerberechnung in LST2007. Benutzt die |
14 |
Daten aus der Pr�ftabelle zum offiziellen Programmablaufplan zur |
Daten aus der Pr�ftabelle zum offiziellen Programmablaufplan zur |
15 |
maschinellen Jahreslohnsteuerberechnung 2006.""" |
maschinellen Jahreslohnsteuerberechnung 2007.""" |
16 |
|
|
17 |
# ACHTUNG: die Pr�ftabelle liefert nur Referenzwerte f�r die |
# ACHTUNG: die Pr�ftabelle liefert nur Referenzwerte f�r die |
18 |
# Berechnung der Lohnsteuer auf ein Jahr, andere Berechnung�eitr�ume |
# Berechnung der Lohnsteuer auf ein Jahr, andere Berechnung�eitr�ume |
19 |
# werden nicht ber�cksichtigt. |
# werden nicht ber�cksichtigt. |
20 |
|
|
21 |
import unittest |
import unittest |
22 |
from LST2006 import * |
from LST2007 import * |
23 |
|
|
24 |
class TestGetLohnsteuer(unittest.TestCase): |
class TestGetLohnsteuer(unittest.TestCase): |
25 |
|
|
26 |
def SetUp(self): |
def SetUp(self): |
27 |
"""Offizielle Pr�ftabelle und LStRechner2006 einrichten""" |
"""Offizielle Pr�ftabelle und LStRechner2007 einrichten""" |
28 |
self.prueftabelle = { |
self.prueftabelle = { |
29 |
5000 : [ 0.0, 0.0, 0.0, 0.0, 612.0, 750.0 ], |
5000 : [ 0.0, 0.0, 0.0, 0.0, 612.0, 750.0 ], |
30 |
7500 : [ 0.0, 0.0, 0.0, 0.0, 987.0, 1125.0 ], |
7500 : [ 0.0, 0.0, 0.0, 0.0, 987.0, 1125.0 ], |
32 |
12500: [ 232.0, 18.0, 0.0, 232.0, 2403.0, 2789.0 ], |
12500: [ 232.0, 18.0, 0.0, 232.0, 2403.0, 2789.0 ], |
33 |
15000: [ 714.0, 444.0, 0.0, 714.0, 3400.0, 3722.0 ], |
15000: [ 714.0, 444.0, 0.0, 714.0, 3400.0, 3722.0 ], |
34 |
17500: [ 1362.0, 1043.0, 0.0, 1362.0, 4266.0, 4576.0 ], |
17500: [ 1362.0, 1043.0, 0.0, 1362.0, 4266.0, 4576.0 ], |
35 |
20000: [ 2063.0, 1727.0, 0.0, 2063.0, 5126.0, 5458.0 ], |
20000: [ 2048.0, 1713.0, 0.0, 2048.0, 5126.0, 5458.0 ], |
36 |
22500: [ 2718.0, 2368.0, 264.0, 2718.0, 6044.0, 6398.0 ], |
22500: [ 2691.0, 2342.0, 264.0, 2691.0, 6044.0, 6398.0 ], |
37 |
25000: [ 3393.0, 3028.0, 628.0, 3393.0, 7020.0, 7394.0 ], |
25000: [ 3361.0, 2997.0, 628.0, 3361.0, 7020.0, 7394.0 ], |
38 |
27500: [ 4095.0, 3715.0, 1104.0, 4095.0, 8052.0, 8438.0 ], |
27500: [ 4059.0, 3680.0, 1104.0, 4059.0, 8052.0, 8438.0 ], |
39 |
30000: [ 4824.0, 4430.0, 1634.0, 4824.0, 9102.0, 9488.0 ], |
30000: [ 4783.0, 4390.0, 1634.0, 4783.0, 9102.0, 9488.0 ], |
40 |
32500: [ 5580.0, 5172.0, 2240.0, 5580.0, 10152.0, 10538.0 ], |
32500: [ 5534.0, 5127.0, 2240.0, 5534.0, 10152.0, 10538.0 ], |
41 |
35000: [ 6364.0, 5941.0, 2952.0, 6364.0, 11202.0, 11588.0 ], |
35000: [ 6313.0, 5890.0, 2952.0, 6313.0, 11202.0, 11588.0 ], |
42 |
37500: [ 7175.0, 6737.0, 3684.0, 7175.0, 12252.0, 12638.0 ], |
37500: [ 7118.0, 6682.0, 3684.0, 7118.0, 12252.0, 12638.0 ], |
43 |
40000: [ 8013.0, 7561.0, 4364.0, 8013.0, 13302.0, 13688.0 ], |
40000: [ 7951.0, 7499.0, 4334.0, 7951.0, 13302.0, 13688.0 ], |
44 |
42500: [ 8878.0, 8411.0, 5026.0, 8878.0, 14352.0, 14738.0 ], |
42500: [ 8810.0, 8344.0, 4976.0, 8810.0, 14352.0, 14738.0 ], |
45 |
45000: [ 9771.0, 9290.0, 5686.0, 9771.0, 15402.0, 15788.0 ], |
45000: [ 9697.0, 9216.0, 5632.0, 9697.0, 15402.0, 15788.0 ], |
46 |
47500: [ 10691.0, 10195.0, 6360.0, 10691.0, 16452.0, 16838.0 ], |
47500: [ 10610.0, 10115.0, 6300.0, 10610.0, 16452.0, 16838.0 ], |
47 |
50000: [ 11639.0, 11128.0, 7046.0, 11639.0, 17502.0, 17888.0 ], |
50000: [ 11551.0, 11041.0, 6982.0, 11551.0, 17502.0, 17888.0 ], |
48 |
52500: [ 12613.0, 12087.0, 7746.0, 12613.0, 18552.0, 18938.0 ], |
52500: [ 12518.0, 11994.0, 7678.0, 12518.0, 18552.0, 18938.0 ], |
49 |
55000: [ 13615.0, 13075.0, 8460.0, 13615.0, 19602.0, 19988.0 ], |
55000: [ 13513.0, 12974.0, 8388.0, 13513.0, 19602.0, 19988.0 ], |
50 |
57500: [ 14639.0, 14089.0, 9188.0, 14639.0, 20652.0, 21038.0 ], |
57500: [ 14531.0, 13981.0, 9110.0, 14531.0, 20652.0, 21038.0 ], |
51 |
60000: [ 15664.0, 15115.0, 9928.0, 15664.0, 21702.0, 22088.0 ] |
60000: [ 15552.0, 15002.0, 9846.0, 15552.0, 21702.0, 22088.0 ] |
52 |
} |
} |
53 |
self.t = LStRechner2006() |
self.t = LStRechner2007() |
54 |
self.t.SetZeitraum(JAHR) |
self.t.SetZeitraum(JAHR) |
55 |
|
|
56 |
def test_lohnsteuer(self): |
def test_lohnsteuer(self): |