def test_eval_file(self): with NamedTemporaryFile() as f: f.write('(set! f (open "foo.txt" :write)) (close! f)') f.flush() entry_point(['trifle', f.name]) self.assertTrue(os.path.exists("foo.txt")) os.remove("foo.txt")
def test_snippet_lex_error(self): """If given a snippet that throws an error during lexing, we should have a non-zero return code. """ return_value = entry_point(['trifle', '-i', '1/0']) self.assertNotEqual(return_value, 0)
def test_snippet_error(self): """If given a snippet that throws an error, we should have a non-zero return code. """ return_value = entry_point(['trifle', '-i', '(+ 1 i-dont-exist)']) self.assertNotEqual(return_value, 0)
def test_snippet_evaluate_empty_list_catch(self): # Regression test. return_value = entry_point([ 'trifle', '-i', '(try () :catch error e 1)' ]) self.assertEqual(return_value, 0)
def test_eval_file_lex_error(self): with NamedTemporaryFile() as f: f.write('1/0') f.flush() return_value = entry_point(['trifle', f.name]) self.assertNotEqual(return_value, 0)
def test_snippet_error_as_value(self): """If given a snippet that returns an error, we should have a return code of zero. """ return_value = entry_point([ 'trifle', '-i', '(try (/ 1 0) :catch error e e)' ]) self.assertEqual(return_value, 0)
def test_entry_point(self, mock_get_song_metadata, mock_get_listen_brainz, mock_dataframe, mock_add_recommendations): """Test * Getting songs' metadata via ListenBrainz + Genius API * Transforming songs' metadata to Pandas DataFrame * Replace _temporary_ table with songs' metadata * Run an `insert into` to insert _new_ song recommendations """ mock_get_song_metadata.return_value = dict() mock_get_listen_brainz.return_value = list() expected_response = 'add-recommendations completed!' response = main.entry_point(self.request) self.assertTrue(mock_dataframe.called) main.pd_gbq.to_gbq.assert_called_with(mock_dataframe(), 'noon.t_recommendations', project_id='faf-starter', if_exists='replace') self.assertTrue(mock_add_recommendations.called) self.assertEqual(response, expected_response)
def test_no_args_return_value(self): return_value = entry_point([]) self.assertNotEqual(return_value, 0)
def test_snippet(self): with mock_stdout() as stdout: entry_point(['trifle', '-i', '(+ 1 2)']) self.assertEqual(stdout.getvalue(), '3\n')
def test_no_args_prints_usage(self): with mock_stdout() as stdout: entry_point([]) self.assertEqual(stdout.getvalue(), USAGE + '\n')
def local_main(): return main.entry_point(request=request)
import sys from main import main as entry_point if __name__ == "__main__": sys.exit( entry_point( sys.argv[ 1 : ] ) )
module.unregister() if hasattr(module, '__classes__'): for cls in reversed(module.__classes__): try: bpy.utils.unregister_class(cls) except RuntimeError as err: raise RuntimeError( 'Failed to unregister {0}. Cause: {1}'.format( cls, err)) # ENTRY POINT ================================================================= if __name__ == "__main__": # Blender register modules register() # Import modules import utils import main # Logging workspace = utils.io.path.workspace() print('Workspace:', workspace) logging.config.fileConfig(fname=os.path.join(workspace, 'logging.conf'), disable_existing_loggers=False) # Direct launch mode action = main.args.action if action: main.entry_point(action)