formatting

This commit is contained in:
Frederik Jaeckel 2023-06-30 11:36:17 +02:00
parent e893c1be2b
commit c4571a28b9
6 changed files with 65 additions and 68 deletions

View file

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# This file is part of the cashbook-module from m-ds for Tryton.
# This file is part of the edocument-module for Tryton from m-ds.de.
# The COPYRIGHT file at the top level of this repository contains the
# full copyright notices and license terms.

View file

@ -1,10 +1,11 @@
# -*- coding: utf-8 -*-
# This file is part of the edcoment-module for Tryton.
# This file is part of the edocument-module for Tryton from m-ds.de.
# The COPYRIGHT file at the top level of this repository contains the
# full copyright notices and license terms.
import genshi.template
import os, html
import os
import html
from trytond.exceptions import UserError
from trytond.i18n import gettext
from trytond.modules.edocument_uncefact.edocument import Invoice
@ -45,17 +46,15 @@ class Invoice(Invoice):
if len(line.invoice_taxes) != 1:
raise UserError(gettext(
'edocument_xrechnung.msg_linetax_invalid_number',
linename = line.rec_name,
numtax = len(line.invoice_taxes),
))
linename=line.rec_name,
numtax=len(line.invoice_taxes)))
allowed_cat = ['AE', 'L', 'M', 'E', 'S', 'Z', 'G', 'O', 'K', 'B']
if not line.invoice_taxes[0].tax.unece_category_code in allowed_cat:
raise UserError(gettext(
'edocument_xrechnung.msg_linetax_invalid_catcode',
taxname = line.invoice_taxes[0].tax.rec_name,
allowed = ', '.join(allowed_cat),
))
taxname=line.invoice_taxes[0].tax.rec_name,
allowed=', '.join(allowed_cat)))
return line.invoice_taxes[0].tax
@ -84,8 +83,7 @@ class Invoice(Invoice):
if len(line.unit.unece_code or '') == 0:
raise UserError(gettext(
'edocument_xrechnung.msg_uom_code_missing',
uomname = line.unit.rec_name,
))
uomname=line.unit.rec_name))
return line.unit.unece_code
def tax_category_code(self, tax):
@ -94,8 +92,7 @@ class Invoice(Invoice):
if len(tax.unece_category_code or '') == 0:
raise UserError(gettext(
'edocument_xrechnung.mds_tax_category_missing',
taxname = tax.rec_name,
))
taxname=tax.rec_name))
return tax.unece_category_code
def quote_text(self, text):
@ -112,7 +109,7 @@ class Invoice(Invoice):
os.path.join(os.path.dirname(__file__), 'template'),
auto_reload=True)
return loader.load(os.path.join(version, 'XRechnung.xml'))
else :
else:
return super(Invoice, self)._get_template(version)
# end Invoice

View file

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# This file is part of the edcoment-module for Tryton.
# This file is part of the edocument-module for Tryton from m-ds.de.
# The COPYRIGHT file at the top level of this repository contains the
# full copyright notices and license terms.
@ -19,8 +19,7 @@ class Party(metaclass=PoolMeta):
return ident.code
raise UserError(gettext(
'edocument_xrechnung.msg_missing_xrechnung_route_id',
partyname = self.rec_name,
))
partyname=self.rec_name))
# end Party

View file

@ -2,7 +2,7 @@
"""
# Always prefer setuptools over distutils
from setuptools import setup, find_packages
from setuptools import setup
# To use a consistent encoding
from codecs import open
from os import path
@ -36,7 +36,7 @@ with open(path.join(here, 'versiondep.txt'), encoding='utf-8') as f:
l2 = i.strip().split(';')
if len(l2) < 4:
continue
modversion[l2[0]] = {'min':l2[1], 'max':l2[2], 'prefix':l2[3]}
modversion[l2[0]] = {'min': l2[1], 'max': l2[2], 'prefix': l2[3]}
# tryton-version
major_version = 6
@ -51,19 +51,21 @@ for dep in info.get('depends', []):
prefix = modversion[dep]['prefix']
if len(modversion[dep]['max']) > 0:
requires.append('%s_%s >= %s, <= %s' %
(prefix, dep, modversion[dep]['min'], modversion[dep]['max']))
else :
requires.append('%s_%s >= %s' %
(prefix, dep, modversion[dep]['min']))
else :
requires.append('%s_%s >= %s.%s, < %s.%s' %
('trytond', dep, major_version, minor_version,
requires.append('%s_%s >= %s, <= %s' % (
prefix, dep, modversion[dep]['min'],
modversion[dep]['max']))
else:
requires.append('%s_%s >= %s' % (
prefix, dep, modversion[dep]['min']))
else:
requires.append('%s_%s >= %s.%s, < %s.%s' % (
'trytond', dep, major_version, minor_version,
major_version, minor_version + 1))
requires.append('trytond >= %s.%s, < %s.%s' %
(major_version, minor_version, major_version, minor_version + 1))
requires.append('trytond >= %s.%s, < %s.%s' % (
major_version, minor_version, major_version, minor_version + 1))
setup(name='%s_%s' % (PREFIX, MODULE),
setup(
name='%s_%s' % (PREFIX, MODULE),
version=info.get('version', '0.0.1'),
description='Tryton module to XRechnung to edocument.',
long_description=long_description,
@ -96,9 +98,10 @@ setup(name='%s_%s' % (PREFIX, MODULE),
'trytond.modules.%s' % MODULE,
],
package_data={
'trytond.modules.%s' % MODULE: (info.get('xml', [])
'trytond.modules.%s' % MODULE: (
info.get('xml', [])
+ ['tryton.cfg', 'locale/*.po', 'tests/*.py',
'template/*/*.xml','versiondep.txt', 'README.rst']),
'template/*/*.xml', 'versiondep.txt', 'README.rst']),
},
install_requires=requires,

View file

@ -1,23 +1,18 @@
# This file is part of Tryton. The COPYRIGHT file at the top level of
# this repository contains the full copyright notices and license terms.
# -*- coding: utf-8 -*-
# This file is part of the edocument-module for Tryton from m-ds.de.
# The COPYRIGHT file at the top level of this repository contains the
# full copyright notices and license terms.
import trytond.tests.test_tryton
import unittest
from trytond.modules.edocument_xrechnung.tests.test_edocument import EdocTestCase
from .test_edocument import EdocTestCase
__all__ = ['suite']
class EDocumentTestCase(\
EdocTestCase,\
):
'Test edocument module'
module = 'edocument_xrechnung'
# end EDocumentTestCase
def suite():
suite = trytond.tests.test_tryton.suite()
suite.addTests(unittest.TestLoader().loadTestsFromTestCase(EDocumentTestCase))
suite.addTests(unittest.TestLoader().loadTestsFromTestCase(
EdocTestCase))
return suite

View file

@ -1,12 +1,12 @@
# -*- coding: utf-8 -*-
# This file is part of the cashbook-module from m-ds for Tryton.
# This file is part of the edocument-module for Tryton from m-ds.de.
# The COPYRIGHT file at the top level of this repository contains the
# full copyright notices and license terms.
from trytond.tests.test_tryton import ModuleTestCase, with_transaction
from trytond.pool import Pool
from trytond.modules.edocument_uncefact.tests.test_module import get_invoice
from unittest.mock import Mock, MagicMock
from unittest.mock import Mock
from decimal import Decimal
@ -20,7 +20,6 @@ class EdocTestCase(ModuleTestCase):
"""
pool = Pool()
Template = pool.get('edocument.xrechnung.invoice')
Address = pool.get('party.address')
Identifier = pool.get('party.identifier')
Party = pool.get('party.party')
Bank = pool.get('bank')
@ -28,19 +27,22 @@ class EdocTestCase(ModuleTestCase):
BankNumber = pool.get('bank.account.number')
invoice = get_invoice()
invoice.party.get_xrechnung_route_id = Mock(return_value='xrechn-route-id-123')
invoice.party.get_xrechnung_route_id = Mock(
return_value='xrechn-route-id-123')
invoice.company.party.bank_accounts = [
Mock(spec=BankAccount,
Mock(
spec=BankAccount,
currency=invoice.currency,
bank=Mock(spec=Bank, party=Mock(spec=Party, name='Bank')),
owners = [invoice.company.party],
numbers = [Mock(spec=BankNumber, type='other', number='123456')],
owners=[invoice.company.party],
numbers=[Mock(spec=BankNumber, type='other', number='123456')],
)]
invoice.description = 'description of invoice'
invoice.comment = 'note line 1\nnote line 2'
invoice.taxes[0].tax.rate = Decimal('0.1')
invoice.identifiers = [
Mock(spec=Identifier,
Mock(
spec=Identifier,
type='edoc_route_id',
code='xrechn-route-id-123')
]
@ -52,4 +54,5 @@ class EdocTestCase(ModuleTestCase):
# end EdocTestCase
del ModuleTestCase