import datetime
import logging
-import re
from decimal import Decimal
+from fints.segments import HISPA1
+from fints.segments.debit import HKDME, HKDSE
from mt940.models import Balance
from sepaxml import SepaTransfer
-from fints.segments.debit import HKDSE, HKDME
from .connection import FinTSHTTPSConnection
from .dialog import FinTSDialog
+from .formals import TwoStepParametersCommon
from .message import FinTSMessage
-from .models import SEPAAccount, TANChallenge6, TANChallenge5, TANChallenge3, TANChallenge4, TANChallenge
+from .models import (
+ SEPAAccount, TANChallenge, TANChallenge3,
+ TANChallenge4, TANChallenge5, TANChallenge6,
+)
from .segments.accounts import HKSPA
-from .segments.auth import HKTAN, HKTAB
+from .segments.auth import HKTAB, HKTAN
from .segments.depot import HKWPD
from .segments.saldo import HKSAL
from .segments.statement import HKKAZ
-from .segments.transfer import HKCCS, HKCCM
-from .formals import TwoStepParametersCommon
-from .utils import mt940_to_array, MT535_Miniparser, Password
-
-from fints.segments import HISPA1
+from .segments.transfer import HKCCM, HKCCS
+from .utils import MT535_Miniparser, Password, mt940_to_array
logger = logging.getLogger(__name__)
import base64
import requests
+from fints.parser import FinTS3Parser
+from fints.utils import Password
from .message import FinTSMessage, FinTSResponse
-from fints.parser import FinTS3Parser
-from fints.utils import Password
class FinTSConnectionError(Exception):
pass
with Password.protect():
retval.print_nested()
print("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<")
- return retval
\ No newline at end of file
+ return retval
import logging
-from .message import FinTSMessage, FinTSResponse
+from .message import FinTSMessage
from .segments.auth import HKIDN, HKSYN, HKVVB
from .segments.dialog import HKEND
import re
import warnings
+from collections import Iterable, OrderedDict
from contextlib import suppress
-from inspect import getmro
-from copy import deepcopy
-from collections import OrderedDict, Iterable
-from fints.utils import classproperty, SubclassesMixin, Password
+from fints.utils import Password, SubclassesMixin
+
class ValueList:
def __init__(self, parent):
# https://wiki.ccc-ffm.de/projekte:tangenerator:start#flickercode_uebertragung
import math
import re
-
import time
HHD_VERSION_13 = 13
-from enum import Enum
import random
-import re
-from .segments.message import HNHBK, HNHBS, HNSHA, HNSHK, HNVSD, HNVSK
-from .parser import FinTS3Parser
from .formals import SegmentSequence
-from .segments import ParameterSegment, HIRMG2, HNHBK3, HIBPA3, HISYN4, HIRMS2, HITANSBase
+from .segments import HIBPA3, HIRMG2, HIRMS2, HISYN4, HNHBK3, HITANSBase
+from .segments.message import HNHBK, HNHBS, HNSHA, HNSHK, HNVSD, HNVSK
+
class FinTSMessage:
def __init__(self, blz, username, pin, systemid, dialogid, msgno, encrypted_segments, tan_mechs=None, tan=None):
"""
version = 6
args = ['tan_process', 'request_hash', 'reference', 'challenge', 'challenge_hhd_uc', 'challenge_datetime',
- 'medium_description']
\ No newline at end of file
+ 'medium_description']
-from enum import Enum
+import re
+import warnings
from collections import Iterable
-from contextlib import suppress
-import re, warnings
+from enum import Enum
+
+from .formals import (
+ Container, DataElementGroupField, SegmentSequence, ValueList,
+)
from .segments import FinTS3Segment
-from .formals import Container, ValueList, DataElementField, DataElementGroupField, SegmentSequence
#
# FinTS 3.0 structure:
return b''
else:
raise TypeError("Can only escape str, bytes and None")
-
-
-
import re
-from fints.formals import Container, ContainerMeta, SegmentHeader, DataElementGroupField, DataElementField, ReferenceMessage, SegmentSequenceField, SecurityProfile, SecurityIdentificationDetails, SecurityDateTime, EncryptionAlgorithm, KeyName, Certificate, HashAlgorithm, SignatureAlgorithm, UserDefinedSignature, Response, AccountInformation, AccountLimit, AllowedTransaction, ParameterTwostepTAN1, ParameterTwostepTAN2, ParameterTwostepTAN3, ParameterTwostepTAN4, ParameterTwostepTAN5, ParameterTwostepTAN6, ParameterPinTan, SupportedLanguages2, SupportedHBCIVersions2, BankIdentifier, AccountInternational
-
-from fints.utils import classproperty, SubclassesMixin
+from fints.formals import (
+ AccountInformation, AccountInternational, AccountLimit,
+ AllowedTransaction, BankIdentifier, Certificate, Container, ContainerMeta,
+ DataElementField, DataElementGroupField, EncryptionAlgorithm,
+ HashAlgorithm, KeyName, ParameterPinTan, ParameterTwostepTAN1,
+ ParameterTwostepTAN2, ParameterTwostepTAN3, ParameterTwostepTAN4,
+ ParameterTwostepTAN5, ParameterTwostepTAN6, ReferenceMessage, Response,
+ SecurityDateTime, SecurityIdentificationDetails, SecurityProfile,
+ SegmentHeader, SegmentSequenceField, SignatureAlgorithm,
+ SupportedHBCIVersions2, SupportedLanguages2, UserDefinedSignature,
+)
+from fints.utils import SubclassesMixin, classproperty
TYPE_VERSION_RE = re.compile(r'^([A-Z]+)(\d+)$')
from fints.utils import fints_escape
+
from . import FinTS3SegmentOLD
import time
from fints.utils import fints_escape
+
from . import FinTS3SegmentOLD
from fints.utils import fints_escape
+
from . import FinTS3SegmentOLD
-import mt940
import re
-from .models import Holding
-from datetime import datetime
from contextlib import contextmanager
+from datetime import datetime
+
+import mt940
+
+from .models import Holding
def mt940_to_array(data):
from codecs import open
from os import path
-from setuptools import find_packages, setup
-
from fints import version
+from setuptools import find_packages, setup
here = path.abspath(path.dirname(__file__))
-import pytest, glob, os.path
+import glob
+import os.path
+
import fints.parser
+import pytest
TEST_MESSAGES = {
os.path.basename(f).rsplit('.')[0]: open(f, 'rb').read() for f in
import pytest
-from fints.formals import Container, ContainerField, DataElementField, DataElementGroupField, DigitsField, NumericField, Field, SegmentSequence, SegmentHeader, AlphanumericField, GenericGroupField
+from fints.formals import (
+ AlphanumericField, Container, ContainerField, DataElementField,
+ DataElementGroupField, DigitsField, Field, GenericGroupField,
+ NumericField, SegmentHeader, SegmentSequence,
+)
+
def test_container_simple():
class A(Container):
+import pytest
+from conftest import TEST_MESSAGES
+from fints.formals import SegmentSequence
from fints.message import FinTSResponse
from fints.parser import FinTS3Parser, FinTSParserError, FinTSParserWarning
-from fints.formals import SegmentSequence
from fints.segments import FinTS3Segment
-import pytest
-from conftest import TEST_MESSAGES
@pytest.mark.parametrize("input_name", TEST_MESSAGES.keys())
def test_explode(input_name):
with pytest.warns(FinTSParserWarning, match='^Ignoring parser error.*: Required field'):
m = FinTS3Parser().parse_message(message1)
assert m.segments[0].__class__ == FinTS3Segment
-
-from fints.parser import FinTS3Serializer, FinTS3Parser
-from fints.segments import FinTS3Segment
-from fints.formals import NumericField
import pytest
-
from conftest import TEST_MESSAGES
+from fints.formals import NumericField
+from fints.parser import FinTS3Parser, FinTS3Serializer
+from fints.segments import FinTS3Segment
+
def test_serialize_1():
class ITST1(FinTS3Segment):
+from io import StringIO
+
import pytest
-from fints.segments import FinTS3Segment, HNHBK3, HNHBS1
-from fints.formals import SegmentSequence, SegmentHeader, DataElementField, GenericField, NumericField, AlphanumericField
+from fints.formals import (
+ AlphanumericField, DataElementField, GenericField,
+ NumericField, SegmentHeader, SegmentSequence,
+)
+from fints.segments import HNHBK3, HNHBS1, FinTS3Segment
-from io import StringIO
def test_metaclass_foo():
a = HNHBK3()