| 
									
										
										
										
											2015-02-13 05:41:57 +08:00
										 |  |  | # Tester for the flaskext_migrate.py module located in flask/scripts/ | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # Author: Keyan Pishdadian | 
					
						
							|  |  |  | import pytest | 
					
						
							|  |  |  | from redbaron import RedBaron | 
					
						
							|  |  |  | import flaskext_migrate as migrate | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | def test_simple_from_import(): | 
					
						
							|  |  |  |     red = RedBaron("from flask.ext import foo") | 
					
						
							| 
									
										
										
										
											2015-02-14 04:27:29 +08:00
										 |  |  |     output = migrate.fix_tester(red) | 
					
						
							| 
									
										
										
										
											2015-02-13 05:41:57 +08:00
										 |  |  |     assert output == "import flask_foo as foo" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | def test_from_to_from_import(): | 
					
						
							|  |  |  |     red = RedBaron("from flask.ext.foo import bar") | 
					
						
							| 
									
										
										
										
											2015-02-14 04:27:29 +08:00
										 |  |  |     output = migrate.fix_tester(red) | 
					
						
							| 
									
										
										
										
											2015-02-13 05:41:57 +08:00
										 |  |  |     assert output == "from flask_foo import bar as bar" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | def test_multiple_import(): | 
					
						
							|  |  |  |     red = RedBaron("from flask.ext.foo import bar, foobar, something") | 
					
						
							| 
									
										
										
										
											2015-02-14 04:27:29 +08:00
										 |  |  |     output = migrate.fix_tester(red) | 
					
						
							| 
									
										
										
										
											2015-02-13 05:41:57 +08:00
										 |  |  |     assert output == "from flask_foo import bar, foobar, something" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | def test_multiline_import(): | 
					
						
							|  |  |  |     red = RedBaron("from flask.ext.foo import \
 | 
					
						
							|  |  |  |                     bar,\ | 
					
						
							|  |  |  |                     foobar,\ | 
					
						
							|  |  |  |                     something") | 
					
						
							| 
									
										
										
										
											2015-02-14 04:27:29 +08:00
										 |  |  |     output = migrate.fix_tester(red) | 
					
						
							| 
									
										
										
										
											2015-02-13 05:41:57 +08:00
										 |  |  |     assert output == "from flask_foo import bar, foobar, something" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | def test_module_import(): | 
					
						
							|  |  |  |     red = RedBaron("import flask.ext.foo") | 
					
						
							| 
									
										
										
										
											2015-02-14 04:27:29 +08:00
										 |  |  |     output = migrate.fix_tester(red) | 
					
						
							|  |  |  |     assert output == "import flask_foo as foo" | 
					
						
							| 
									
										
										
										
											2015-02-13 05:41:57 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-02-14 04:27:29 +08:00
										 |  |  | def test_named_module_import(): | 
					
						
							|  |  |  |     red = RedBaron("import flask.ext.foo as foobar") | 
					
						
							|  |  |  |     output = migrate.fix_tester(red) | 
					
						
							|  |  |  |     assert output == "import flask_foo as foobar" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | def test__named_from_import(): | 
					
						
							| 
									
										
										
										
											2015-02-13 05:41:57 +08:00
										 |  |  |     red = RedBaron("from flask.ext.foo import bar as baz") | 
					
						
							| 
									
										
										
										
											2015-02-14 04:27:29 +08:00
										 |  |  |     output = migrate.fix_tester(red) | 
					
						
							| 
									
										
										
										
											2015-02-13 05:41:57 +08:00
										 |  |  |     assert output == "from flask_foo import bar as baz" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | def test_parens_import(): | 
					
						
							|  |  |  |     red = RedBaron("from flask.ext.foo import (bar, foo, foobar)") | 
					
						
							| 
									
										
										
										
											2015-02-14 04:27:29 +08:00
										 |  |  |     output = migrate.fix_tester(red) | 
					
						
							| 
									
										
										
										
											2015-02-13 05:41:57 +08:00
										 |  |  |     assert output == "from flask_foo import (bar, foo, foobar)" | 
					
						
							| 
									
										
										
										
											2015-02-14 04:27:29 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | def test_function_call_migration(): | 
					
						
							|  |  |  |     red = RedBaron("flask.ext.foo(var)") | 
					
						
							|  |  |  |     output = migrate.fix_tester(red) | 
					
						
							|  |  |  |     assert output == "flask_foo(var)" |