Ejemplo n.º 1
0
    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")
Ejemplo n.º 2
0
    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)
Ejemplo n.º 3
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)
Ejemplo n.º 4
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)
Ejemplo n.º 5
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)
Ejemplo n.º 6
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)
Ejemplo n.º 7
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)
Ejemplo n.º 8
0
 def test_no_args_return_value(self):
     return_value = entry_point([])
     self.assertNotEqual(return_value, 0)
Ejemplo n.º 9
0
    def test_snippet(self):
        with mock_stdout() as stdout:
            entry_point(['trifle', '-i', '(+ 1 2)'])

        self.assertEqual(stdout.getvalue(), '3\n')
Ejemplo n.º 10
0
    def test_no_args_prints_usage(self):
        with mock_stdout() as stdout:
            entry_point([])

        self.assertEqual(stdout.getvalue(), USAGE + '\n')
Ejemplo n.º 11
0
def local_main():
    return main.entry_point(request=request)
Ejemplo n.º 12
0
import sys
from main import main as entry_point

if __name__ == "__main__":
   sys.exit( entry_point( sys.argv[ 1 : ] ) )
Ejemplo n.º 13
0
            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)