Example #1
0
    def testNonAscii(self):
        mydir = os.path.join(self.tmpdir, "unicode")
        os.mkdir(mydir)
        with open("unicode.tar.gz", "rb") as stream:
            unpack.unpack_archive("ftp://foo/file.tgz", stream, self.tmpdir)
        self.assertEqual(
            [
                s.decode("utf-8")
                for s in [
                    b"D /unicode",
                    b"D /unicode/test-unic\xcc\xa7\xc3\xb8\xc3\xb0e\xcc\x88",
                    b"F c1c727274876ed5915c75a907131b8462cfdd5ba278140067dc80a2bcba033d6 1377477018 14 file",
                ]
            ],
            list(manifest.generate_manifest(self.tmpdir, alg="sha256")),
        )

        self.assertEqual(
            [
                s.decode("utf-8")
                for s in [
                    b"D /unicode",
                    b"D /unicode/test-unic\xcc\xa7\xc3\xb8\xc3\xb0e\xcc\x88",
                    b"F 5f1ff6172591102593950d1ae6c4a78709b1c44c 1377477018 14 file",
                ]
            ],
            list(manifest.generate_manifest(self.tmpdir, alg="sha1new")),
        )
Example #2
0
 def testSimpleManifest(self):
     path = os.path.join(self.tmp, "MyFile")
     f = file(path, "w")
     f.write("Hello")
     f.close()
     os.utime(path, (1, 2))
     lines = list(manifest.generate_manifest(self.tmp))
     self.assertEquals(["F f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0 2 5 MyFile"], lines)
Example #3
0
 def testOrdering(self):
     mydir = os.path.join(self.tmpdir, 'Dir')
     os.mkdir(mydir)
     self.write('Hello', 'Hello World', 30)
     os.utime(mydir, (10, 20))
     self.assertEqual([
         'F a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e 30 11 Hello',
         'D /Dir'
     ], list(manifest.generate_manifest(self.tmpdir, alg='sha256')))
	def testOrdering(self):
		mydir = os.path.join(self.tmpdir, 'Dir')
		os.mkdir(mydir)
		self.write('Hello', 'Hello World', 30)
		os.utime(mydir, (10, 20))
		self.assertEqual([
			'F a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e 30 11 Hello',
			'D /Dir'],
			list(manifest.generate_manifest(self.tmpdir, alg='sha256')))
Example #5
0
 def testSimpleManifest(self):
     path = os.path.join(self.tmp, 'MyFile')
     f = open(path, 'w')
     f.write('Hello')
     f.close()
     os.utime(path, (1, 2))
     lines = list(manifest.generate_manifest(self.tmp))
     self.assertEqual(
         ['F f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0 2 5 MyFile'], lines)
	def testSimpleManifest(self):
		path = os.path.join(self.tmp, 'MyFile')
		f = open(path, 'w')
		f.write('Hello')
		f.close()
		os.utime(path, (1, 2))
		lines = list(manifest.generate_manifest(self.tmp))
		self.assertEqual(['F f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0 2 5 MyFile'],
				lines)
Example #7
0
 def testOrdering(self):
     mydir = os.path.join(self.tmpdir, "Dir")
     os.mkdir(mydir)
     self.write("Hello", "Hello World", 30)
     os.utime(mydir, (10, 20))
     self.assertEqual(
         ["F a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e 30 11 Hello", "D /Dir"],
         list(manifest.generate_manifest(self.tmpdir, alg="sha256")),
     )
Example #8
0
 def testOrderingSHA1(self):
     mydir = os.path.join(self.tmpdir, 'Dir')
     os.mkdir(mydir)
     self.write('Hello', 'Hello World', 30)
     self.write('Dir/Hello', 'Hello World', 30)
     os.utime(mydir, (10, 20))
     self.assertEqual([
         'F 0a4d55a8d778e5022fab701977c5d840bbc486d0 30 11 Hello', 'D /Dir',
         'F 0a4d55a8d778e5022fab701977c5d840bbc486d0 30 11 Hello'
     ], list(manifest.generate_manifest(self.tmpdir, alg='sha1new')))
Example #9
0
    def testNonAscii(self):
        mydir = os.path.join(self.tmpdir, 'unicode')
        os.mkdir(mydir)
        with open('unicode.tar.gz', 'rb') as stream:
            unpack.unpack_archive('ftp://foo/file.tgz', stream, self.tmpdir)
        self.assertEqual([
            s.decode('utf-8') for s in [
                b'D /unicode',
                b'D /unicode/test-unic\xcc\xa7\xc3\xb8\xc3\xb0e\xcc\x88',
                b'F c1c727274876ed5915c75a907131b8462cfdd5ba278140067dc80a2bcba033d6 1377477018 14 file'
            ]
        ], list(manifest.generate_manifest(self.tmpdir, alg='sha256')))

        self.assertEqual([
            s.decode('utf-8') for s in [
                b'D /unicode',
                b'D /unicode/test-unic\xcc\xa7\xc3\xb8\xc3\xb0e\xcc\x88',
                b'F 5f1ff6172591102593950d1ae6c4a78709b1c44c 1377477018 14 file'
            ]
        ], list(manifest.generate_manifest(self.tmpdir, alg='sha1new')))
	def testOrderingSHA1(self):
		mydir = os.path.join(self.tmpdir, 'Dir')
		os.mkdir(mydir)
		self.write('Hello', 'Hello World', 30)
		self.write('Dir/Hello', 'Hello World', 30)
		os.utime(mydir, (10, 20))
		self.assertEqual([
			'F 0a4d55a8d778e5022fab701977c5d840bbc486d0 30 11 Hello',
			'D /Dir',
			'F 0a4d55a8d778e5022fab701977c5d840bbc486d0 30 11 Hello'],
			list(manifest.generate_manifest(self.tmpdir, alg = 'sha1new')))
Example #11
0
 def testNewSHA256(self):
     mydir = os.path.join(self.tmpdir, 'MyDir')
     os.mkdir(mydir)
     self.write('MyDir/Hello', 'Hello World', 30)
     myexec = self.write('MyDir/Run me', 'Bang!', 40)
     os.symlink('Hello', os.path.join(self.tmpdir, 'MyDir/Sym link'))
     os.chmod(myexec, 0o700)
     self.assertEqual([
         'D /MyDir',
         'F a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e 30 11 Hello',
         'X 640628586b08f8ed3910bd1e75ba02818959e843b54efafb9c2260a1f77e3ddf 40 5 Run me',
         'S 185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969 5 Sym link'
     ], list(manifest.generate_manifest(self.tmpdir, alg='sha256')))
	def testNewSHA256(self):
		mydir = os.path.join(self.tmpdir, 'MyDir')
		os.mkdir(mydir)
		self.write('MyDir/Hello', 'Hello World', 30)
		myexec = self.write('MyDir/Run me', 'Bang!', 40)
		os.symlink('Hello', os.path.join(self.tmpdir, 'MyDir/Sym link'))
		os.chmod(myexec, 0o700)
		self.assertEqual([
			'D /MyDir',
			'F a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e 30 11 Hello',
			'X 640628586b08f8ed3910bd1e75ba02818959e843b54efafb9c2260a1f77e3ddf 40 5 Run me',
			'S 185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969 5 Sym link'],
			list(manifest.generate_manifest(self.tmpdir, alg = 'sha256')))
Example #13
0
 def testOrderingSHA1(self):
     mydir = os.path.join(self.tmpdir, "Dir")
     os.mkdir(mydir)
     self.write("Hello", "Hello World", 30)
     self.write("Dir/Hello", "Hello World", 30)
     os.utime(mydir, (10, 20))
     self.assertEqual(
         [
             "F 0a4d55a8d778e5022fab701977c5d840bbc486d0 30 11 Hello",
             "D /Dir",
             "F 0a4d55a8d778e5022fab701977c5d840bbc486d0 30 11 Hello",
         ],
         list(manifest.generate_manifest(self.tmpdir, alg="sha1new")),
     )
	def testNewSHA1(self):
		mydir = os.path.join(self.tmpdir, 'MyDir')
		os.mkdir(mydir)
		self.write('MyDir/Hello', 'Hello World', 30)
		myexec = self.write('MyDir/Run me', 'Bang!', 40)
		os.symlink('Hello', os.path.join(self.tmpdir, 'MyDir/Sym link'))
		os.chmod(myexec, 0o700)
		os.utime(mydir, (10, 20))
		self.assertEqual([
			'D /MyDir',
			'F 0a4d55a8d778e5022fab701977c5d840bbc486d0 30 11 Hello',
			'X 4001b8c42ddfb61c453d04930e8ce78fb3a40bc8 40 5 Run me',
			'S f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0 5 Sym link'],
			list(manifest.generate_manifest(self.tmpdir, alg = 'sha1new')))
Example #15
0
 def testNewSHA1(self):
     mydir = os.path.join(self.tmpdir, 'MyDir')
     os.mkdir(mydir)
     self.write('MyDir/Hello', 'Hello World', 30)
     myexec = self.write('MyDir/Run me', 'Bang!', 40)
     os.symlink('Hello', os.path.join(self.tmpdir, 'MyDir/Sym link'))
     os.chmod(myexec, 0o700)
     os.utime(mydir, (10, 20))
     self.assertEqual([
         'D /MyDir',
         'F 0a4d55a8d778e5022fab701977c5d840bbc486d0 30 11 Hello',
         'X 4001b8c42ddfb61c453d04930e8ce78fb3a40bc8 40 5 Run me',
         'S f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0 5 Sym link'
     ], list(manifest.generate_manifest(self.tmpdir, alg='sha1new')))
Example #16
0
 def testNewSHA256(self):
     mydir = os.path.join(self.tmpdir, "MyDir")
     os.mkdir(mydir)
     self.write("MyDir/Hello", "Hello World", 30)
     myexec = self.write("MyDir/Run me", "Bang!", 40)
     os.symlink("Hello", os.path.join(self.tmpdir, "MyDir/Sym link"))
     os.chmod(myexec, 0o700)
     self.assertEqual(
         [
             "D /MyDir",
             "F a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e 30 11 Hello",
             "X 640628586b08f8ed3910bd1e75ba02818959e843b54efafb9c2260a1f77e3ddf 40 5 Run me",
             "S 185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969 5 Sym link",
         ],
         list(manifest.generate_manifest(self.tmpdir, alg="sha256")),
     )
Example #17
0
 def testNewSHA1(self):
     mydir = os.path.join(self.tmpdir, "MyDir")
     os.mkdir(mydir)
     self.write("MyDir/Hello", "Hello World", 30)
     myexec = self.write("MyDir/Run me", "Bang!", 40)
     os.symlink("Hello", os.path.join(self.tmpdir, "MyDir/Sym link"))
     os.chmod(myexec, 0o700)
     os.utime(mydir, (10, 20))
     self.assertEqual(
         [
             "D /MyDir",
             "F 0a4d55a8d778e5022fab701977c5d840bbc486d0 30 11 Hello",
             "X 4001b8c42ddfb61c453d04930e8ce78fb3a40bc8 40 5 Run me",
             "S f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0 5 Sym link",
         ],
         list(manifest.generate_manifest(self.tmpdir, alg="sha1new")),
     )
Example #18
0
	def testLinkManifest(self):
		path = os.path.join(self.tmp, 'MyLink')
		os.symlink('Hello', path)
		lines = list(manifest.generate_manifest(self.tmp))
		self.assertEqual(['S f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0 5 MyLink'],
				lines)
Example #19
0
 def testEmpty(self):
     self.assertEqual("", "\n".join(manifest.generate_manifest(self.tmpdir)))
Example #20
0
	def testEmptyManifest(self):
		lines = list(manifest.generate_manifest(self.tmp))
		self.assertEqual([], lines)
Example #21
0
 def testLinkManifest(self):
     path = os.path.join(self.tmp, 'MyLink')
     os.symlink('Hello', path)
     lines = list(manifest.generate_manifest(self.tmp))
     self.assertEqual(
         ['S f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0 5 MyLink'], lines)
Example #22
0
 def testEmptyManifest(self):
     lines = list(manifest.generate_manifest(self.tmp))
     self.assertEqual([], lines)
	def testEmpty(self):
		self.assertEqual('',
			'\n'.join(manifest.generate_manifest(self.tmpdir)))
Example #24
0
 def testLinkManifest(self):
     path = os.path.join(self.tmp, "MyLink")
     os.symlink("Hello", path)
     lines = list(manifest.generate_manifest(self.tmp))
     self.assertEquals(["S f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0 5 MyLink"], lines)
Example #25
0
 def testEmpty(self):
     self.assertEqual('',
                      '\n'.join(manifest.generate_manifest(self.tmpdir)))