#!/usr/bin/env python3 # Copyright (C) 2013 Intra2net AG # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU Lesser General Public License as published # by the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Lesser General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see # import unittest from testing.test_crypto import HeaderTest, AESGCMTest from testing.test_multivol import MultivolGnuFormatTest, MultivolPaxFormatTest from testing.test_concat_compress import ConcatCompressTest from testing.test_recover import \ RecoverCorruptPayloadSingleTest \ , RecoverCorruptPayloadMultiTest \ , RecoverCorruptPayloadGZSingleTest \ , RecoverCorruptPayloadGZMultiTest \ , RecoverCorruptPayloadGZAESSingleTest \ , RecoverCorruptPayloadGZAESMultiTest \ , RecoverCorruptHeaderSingleTest \ , RecoverCorruptHeaderMultiTest \ , RecoverCorruptHeaderGZSingleTest \ , RecoverCorruptHeaderGZMultiTest \ , RecoverCorruptHeaderGZAESSingleTest \ , RecoverCorruptHeaderGZAESMultiTest \ , RecoverCorruptEntireHeaderSingleTest \ , RecoverCorruptEntireHeaderMultiTest \ , RecoverCorruptEntireHeaderGZSingleTest \ , RecoverCorruptEntireHeaderGZMultiTest \ , RecoverCorruptEntireHeaderGZAESSingleTest \ , RecoverCorruptEntireHeaderGZAESMultiTest \ , RecoverCorruptTrailingDataSingleTest \ , RecoverCorruptTrailingDataMultiTest \ , RecoverCorruptTrailingDataGZSingleTest \ , RecoverCorruptTrailingDataGZMultiTest \ , RecoverCorruptTrailingDataGZAESSingleTest \ , RecoverCorruptTrailingDataGZAESMultiTest \ , RecoverCorruptVolumeTest \ , RecoverCorruptVolumeGZTest \ , RecoverCorruptVolumeGZAESTest \ , RecoverCorruptHoleTest \ , RecoverCorruptHoleGZTest \ , RecoverCorruptHoleGZAESTest \ , RescueCorruptHoleTest \ , RescueCorruptHoleGZTest \ , RescueCorruptHoleGZAESTest \ , GenIndexIntactTest \ , GenIndexIntactGZTest \ , GenIndexIntactGZAESTest from testing.test_rescue_tar import RescueTarTest from testing.test_encryption import EncryptionTest from testing.test_deltatar import (DeltaTarTest, DeltaTar2Test, DeltaTarStreamTest, DeltaTarGzipTest, DeltaTarGzipStreamTest, DeltaTarGzipConcatTest, DeltaTarGzipAes128ConcatTest, DeltaTarAes128ConcatTest ) from testing.test_compression_level import suite if __name__ == "__main__": import sys if len (sys.argv) == 1: unittest.TextTestRunner().run(suite()) unittest.main() else: suite = unittest.TestSuite () def add (n): ret = False for group in [#testing.test_multivol MultivolGnuFormatTest, MultivolPaxFormatTest # testing.test_concat_compress , ConcatCompressTest # testing.test_rescue_tar , RescueTarTest # testing.test_encryption , EncryptionTest # testing.test_deltatar , DeltaTarTest, DeltaTar2Test , DeltaTarStreamTest, DeltaTarGzipTest , DeltaTarGzipStreamTest, DeltaTarGzipConcatTest , DeltaTarGzipAes128ConcatTest , DeltaTarAes128ConcatTest , HeaderTest, AESGCMTest # testing.test_recover , RecoverCorruptPayloadSingleTest , RecoverCorruptPayloadMultiTest , RecoverCorruptPayloadGZSingleTest , RecoverCorruptPayloadGZMultiTest , RecoverCorruptPayloadGZAESSingleTest , RecoverCorruptPayloadGZAESMultiTest , RecoverCorruptHeaderSingleTest , RecoverCorruptHeaderMultiTest , RecoverCorruptHeaderGZSingleTest , RecoverCorruptHeaderGZMultiTest , RecoverCorruptHeaderGZAESSingleTest , RecoverCorruptHeaderGZAESMultiTest , RecoverCorruptEntireHeaderSingleTest , RecoverCorruptEntireHeaderMultiTest , RecoverCorruptEntireHeaderGZSingleTest , RecoverCorruptEntireHeaderGZMultiTest , RecoverCorruptEntireHeaderGZAESSingleTest , RecoverCorruptEntireHeaderGZAESMultiTest , RecoverCorruptTrailingDataSingleTest , RecoverCorruptTrailingDataMultiTest , RecoverCorruptTrailingDataGZSingleTest , RecoverCorruptTrailingDataGZMultiTest , RecoverCorruptTrailingDataGZAESSingleTest , RecoverCorruptVolumeTest , RecoverCorruptVolumeGZTest , RecoverCorruptVolumeGZAESTest , RecoverCorruptHoleTest , RecoverCorruptHoleGZTest , RecoverCorruptHoleGZAESTest , RescueCorruptHoleTest , RescueCorruptHoleGZTest , RescueCorruptHoleGZAESTest , GenIndexIntactTest , GenIndexIntactGZTest , GenIndexIntactGZAESTest ]: try: t = group (n) except ValueError: # no such test continue print ("including ā€œ%sā€" % n) suite.addTest(t) ret = True return ret n = 0 for arg in sys.argv [1:]: if add (arg) is True: n += 1 if n == 0: print ("ERROR: no valid test name specified, please double-check", file=sys.stderr) sys.exit (-1) runner = unittest.TextTestRunner () runner.run (suite)