+++ /dev/null
-#!/usr/bin/env python
-# vim: set ts=4 sts=4 sw=4 textwidth=92 :
-
-import os, sys, unittest
-from rarslave import *
-from RarslaveLogger import RarslaveLogger,RarslaveMessage,MessageType
-
-class rarslavetest (unittest.TestCase):
-
- def assertListEquals (self, l1, l2):
- if l1 is l2:
- return True
-
- self.assertEquals (len(l1), len(l2))
-
- for e in l1:
- if e not in l2:
- self.fail ("Element missing from list")
-
- return True
-
- def setUp (self):
- self.logger = RarslaveLogger ()
-
- def tearDown (self):
- self.logger = None
-
- def testGetBasenameNone (self):
- QNAME = '[something] some names.txt'
- ANAME = '[something] some names.txt'
-
- # Tests for an exension that should not be stripped
- self.assertEquals (ANAME, get_basename (QNAME))
-
- def testGetBasenameSingle (self):
- QNAME = '[something] some names.par2'
- ANAME = '[something] some names'
-
- self.assertEquals (ANAME, get_basename (QNAME))
-
- def testGetBasenameMulti (self):
- QNAME = '[a.f.k.] The Melancholy of Haruhi Suzumiya - 13.avi.001'
- ANAME = '[a.f.k.] The Melancholy of Haruhi Suzumiya - 13'
-
- self.assertEquals (ANAME, get_basename (QNAME))
-
- def testGetBasenameMulti2 (self):
- QNAME = '[AonE-AnY]_Ah_My_Goddess_-_Sorezore_no_Tsubasa_-_13_[WS][E6380C3F].avi.vol00+01.PAR2'
- ANAME = '[AonE-AnY]_Ah_My_Goddess_-_Sorezore_no_Tsubasa_-_13_[WS][E6380C3F]'
-
- self.assertEquals (ANAME, get_basename (QNAME))
-
- def testFindLikelyFilesBadDir (self):
- DIR = '/fake/dir'
-
- self.assertRaises (AssertionError, find_likely_files, "fake", DIR)
-
- def testFindAllPar2Files (self):
- DIR = '/fake/dir'
-
- self.assertRaises (ValueError, find_all_par2_files, DIR)
-
- def testIsNewRar (self):
- DIR = os.getcwd() + '/test_material/01/'
-
- self.assertTrue (is_newrar (os.listdir (DIR)))
-
- def testDeletableFiles1 (self):
- FILES = ['test.part%d.rar' % n for n in xrange(10)]
-
- self.assertListEquals (find_deleteable_files (FILES), FILES)
-
- def testDeletableFiles2 (self):
- FILESN = ['%d.mp3' % n for n in xrange(20)]
- FILESY = ['%d.zip' % n for n in xrange(5)]
-
- self.assertListEquals (find_deleteable_files (FILESN + FILESY), FILESY)
-
- ### RarslaveMessage tests
-
- def testRepr (self):
- STR1 = "Hello World"
- STR2 = "Goodbye, \nCruel World"
-
- self.assertEquals (STR1, RarslaveMessage (STR1).__repr__())
- self.assertEquals (STR1, RarslaveMessage (STR1, MessageType.Normal).__repr__())
- self.assertEquals (STR2, RarslaveMessage (STR2, MessageType.Verbose).__repr__())
- self.assertEquals (STR2, RarslaveMessage (STR2, MessageType.Debug).__repr__())
-
- def testisVerboseMessage (self):
- STR1 = "Hello World"
- STR2 = "Goodbye, \nCruel World"
-
- self.assertTrue (RarslaveMessage (STR1, MessageType.Verbose).isVerbose())
- self.assertTrue (RarslaveMessage (STR2, MessageType.Verbose).isVerbose())
- self.assertFalse (RarslaveMessage (STR1).isVerbose())
- self.assertFalse (RarslaveMessage (STR2, MessageType.Debug).isVerbose())
- self.assertFalse (RarslaveMessage (STR2, MessageType.Normal).isVerbose())
-
-
-if __name__ == '__main__':
- unittest.main ()
-