31 lines
		
	
	
		
			964 B
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			964 B
		
	
	
	
		
			Python
		
	
	
	
# -*- coding: utf-8 -*-
 | 
						|
#                     The LLVM Compiler Infrastructure
 | 
						|
#
 | 
						|
# This file is distributed under the University of Illinois Open Source
 | 
						|
# License. See LICENSE.TXT for details.
 | 
						|
 | 
						|
import libear as sut
 | 
						|
import unittest
 | 
						|
import os.path
 | 
						|
 | 
						|
 | 
						|
class TemporaryDirectoryTest(unittest.TestCase):
 | 
						|
    def test_creates_directory(self):
 | 
						|
        dirname = None
 | 
						|
        with sut.TemporaryDirectory() as tmpdir:
 | 
						|
            self.assertTrue(os.path.isdir(tmpdir))
 | 
						|
            dirname = tmpdir
 | 
						|
        self.assertIsNotNone(dirname)
 | 
						|
        self.assertFalse(os.path.exists(dirname))
 | 
						|
 | 
						|
    def test_removes_directory_when_exception(self):
 | 
						|
        dirname = None
 | 
						|
        try:
 | 
						|
            with sut.TemporaryDirectory() as tmpdir:
 | 
						|
                self.assertTrue(os.path.isdir(tmpdir))
 | 
						|
                dirname = tmpdir
 | 
						|
                raise RuntimeError('message')
 | 
						|
        except:
 | 
						|
            self.assertIsNotNone(dirname)
 | 
						|
            self.assertFalse(os.path.exists(dirname))
 |