#!/usr/bin/env python # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this file, # You can obtain one at http://mozilla.org/MPL/2.0/. import unittest import os from mozprofile import Profile class TestProfile(unittest.TestCase): def test_with_profile_should_cleanup(self): with Profile() as profile: self.assertTrue(os.path.exists(profile.profile)) # profile is cleaned self.assertFalse(os.path.exists(profile.profile)) def test_with_profile_should_cleanup_even_on_exception(self): with self.assertRaises(ZeroDivisionError): with Profile() as profile: self.assertTrue(os.path.exists(profile.profile)) 1 / 0 # will raise ZeroDivisionError # profile is cleaned self.assertFalse(os.path.exists(profile.profile)) if __name__ == '__main__': unittest.main()