Merge remote branch 'remotes/gullydwarf-cfdv/437_slug_shouldnt_be_empty'
[mediagoblin.git] / mediagoblin / tests / test_globals.py
index 59d217f3be0ec4dbae95f1afe347c8a401344fbe..63578d621603754efbd230cb45ad6bcb8f1bbca3 100644 (file)
 # You should have received a copy of the GNU Affero General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+from nose.tools import assert_raises
+
 from mediagoblin import mg_globals
 
-def test_setup_globals():
-    mg_globals.setup_globals(
-        db_connection='my favorite db_connection!',
-        database='my favorite database!',
-        public_store='my favorite public_store!',
-        queue_store='my favorite queue_store!')
-    
-    assert mg_globals.db_connection == 'my favorite db_connection!'
-    assert mg_globals.database == 'my favorite database!'
-    assert mg_globals.public_store == 'my favorite public_store!'
-    assert mg_globals.queue_store == 'my favorite queue_store!'
+class TestGlobals(object):
+    def setUp(self):
+        self.old_connection = mg_globals.db_connection
+        self.old_database = mg_globals.database
+
+    def tearDown(self):
+        mg_globals.db_connection = self.old_connection
+        mg_globals.database = self.old_database
+
+    def test_setup_globals(self):
+        mg_globals.setup_globals(
+            db_connection='my favorite db_connection!',
+            database='my favorite database!',
+            public_store='my favorite public_store!',
+            queue_store='my favorite queue_store!')
+
+        assert mg_globals.db_connection == 'my favorite db_connection!'
+        assert mg_globals.database == 'my favorite database!'
+        assert mg_globals.public_store == 'my favorite public_store!'
+        assert mg_globals.queue_store == 'my favorite queue_store!'
+
+        assert_raises(
+            AssertionError,
+            mg_globals.setup_globals,
+            no_such_global_foo = "Dummy")