Daniel Ecer commited on
Commit
e725501
·
1 Parent(s): 696d101

Define app without create_app for simplicity

Browse files
app.py CHANGED
@@ -1,7 +1,7 @@
1
- from fngradio_various_api_mcp.app import create_app
2
 
3
 
4
- gradio_app = create_app().tabbed()
5
 
6
 
7
  if __name__ == "__main__":
 
1
+ from fngradio_various_api_mcp.app import app
2
 
3
 
4
+ gradio_app = app.tabbed()
5
 
6
 
7
  if __name__ == "__main__":
fngradio_various_api_mcp/__main__.py CHANGED
@@ -1,10 +1,9 @@
1
  import logging
2
 
3
- from fngradio_various_api_mcp.app import create_app
4
 
5
 
6
  def main() -> None:
7
- app = create_app()
8
  app.tabbed().launch(mcp_server=True)
9
 
10
 
 
1
  import logging
2
 
3
+ from fngradio_various_api_mcp.app import app
4
 
5
 
6
  def main() -> None:
 
7
  app.tabbed().launch(mcp_server=True)
8
 
9
 
fngradio_various_api_mcp/app.py CHANGED
@@ -2,16 +2,14 @@ from fngradio import FnGradioApp
2
  import httpx
3
 
4
 
5
- def create_app() -> FnGradioApp:
6
- app = FnGradioApp()
7
 
8
- @app.interface()
9
- def catfact() -> str:
10
- """
11
- Random cat fact from `catfact.ninja`
12
- """
13
- response = httpx.get('https://catfact.ninja/fact')
14
- response.raise_for_status()
15
- return response.json()['fact']
16
 
17
- return app
 
 
 
 
 
 
 
 
2
  import httpx
3
 
4
 
5
+ app = FnGradioApp()
 
6
 
 
 
 
 
 
 
 
 
7
 
8
+ @app.interface()
9
+ def catfact() -> str:
10
+ """
11
+ Random cat fact from `catfact.ninja`
12
+ """
13
+ response = httpx.get('https://catfact.ninja/fact')
14
+ response.raise_for_status()
15
+ return response.json()['fact']
tests/conftest.py CHANGED
@@ -10,8 +10,7 @@ def setup_logging():
10
  logging.getLogger(name).setLevel('DEBUG')
11
 
12
 
13
- @pytest.fixture(autouse=True, scope='session')
14
- def ensure_thread_loop():
15
  loop = asyncio.new_event_loop()
16
  asyncio.set_event_loop(loop)
17
- yield
 
10
  logging.getLogger(name).setLevel('DEBUG')
11
 
12
 
13
+ def pytest_sessionstart():
14
+ # Ensure event loop exists before modules load
15
  loop = asyncio.new_event_loop()
16
  asyncio.set_event_loop(loop)
 
tests/test_app.py CHANGED
@@ -1,9 +1,8 @@
1
  from fngradio import FnGradioApp
2
 
3
- from fngradio_various_api_mcp.app import create_app
4
 
5
 
6
  class TestApp:
7
  def test_should_not_fail(self):
8
- app = create_app()
9
  assert isinstance(app, FnGradioApp)
 
1
  from fngradio import FnGradioApp
2
 
3
+ from fngradio_various_api_mcp.app import app
4
 
5
 
6
  class TestApp:
7
  def test_should_not_fail(self):
 
8
  assert isinstance(app, FnGradioApp)