diff --git a/.github/workflows/python-app.yml b/.github/workflows/python-app.yml deleted file mode 100644 index 1168bd9..0000000 --- a/.github/workflows/python-app.yml +++ /dev/null @@ -1,39 +0,0 @@ -# This workflow will install Python dependencies, run tests and lint with a single version of Python -# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python - -name: Python application - -on: - push: - branches: [ "main" ] - pull_request: - branches: [ "main" ] - -permissions: - contents: read - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - - name: Set up Python 3.10 - uses: actions/setup-python@v3 - with: - python-version: "3.10" - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install flake8 pytest - if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - - name: Lint with flake8 - run: | - # stop the build if there are Python syntax errors or undefined names - flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics - # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - - name: Test with pytest - run: | - pytest diff --git a/src/test_instawebhooks.py b/src/test_instawebhooks.py deleted file mode 100644 index 3225ec6..0000000 --- a/src/test_instawebhooks.py +++ /dev/null @@ -1,52 +0,0 @@ -""" -Tests for instawebhooks -""" - -from datetime import datetime - -import pytest - -from instawebhooks import create_embed_json - - -class MockPost: - """Mock Post object for testing""" - - def __init__(self): - self.owner_username = "testuser" - self.caption = "This is a test caption" - self.shortcode = "ABC123" - self.date = datetime.now() - self.owner_profile = type('', (), { - "full_name": "Test User", "profile_pic_url": "https://example.com/profile.jpg"})() - self.url = "https://example.com/post.jpg" - - -@pytest.fixture -def mock_post(): - """Return a mock Post object""" - return MockPost() - - -def test_create_embed_json_returns_dict(mock_post): - """Test that create_embed_json returns a dictionary""" - embed = create_embed_json(mock_post) - assert isinstance(embed, dict) - - -def test_create_embed_json_keys(mock_post): - """Test that create_embed_json returns a dictionary with the expected keys""" - embed = create_embed_json(mock_post) - expected_keys = ["title", "description", "url", - "color", "timestamp", "author", "footer", "image"] - assert all(key in embed for key in expected_keys) - - -def test_create_embed_json_content(mock_post): - """Test that create_embed_json returns a dictionary with the expected content""" - embed = create_embed_json(mock_post) - assert embed["title"] == mock_post.owner_username - assert embed["description"] == mock_post.caption - assert embed["url"] == f"https://instagram.com/p/{mock_post.shortcode}/" - assert embed["author"]["name"] == mock_post.owner_profile.full_name - assert embed["image"]["url"] == mock_post.url