Skip to content

Commit

Permalink
Update quotes in flask tutorial and example
Browse files Browse the repository at this point in the history
  • Loading branch information
rmk135 committed Sep 30, 2021
1 parent 7e794c4 commit c92a941
Show file tree
Hide file tree
Showing 9 changed files with 139 additions and 139 deletions.
108 changes: 54 additions & 54 deletions docs/tutorials/flask.rst
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ Put next into the ``views.py``:
def index():
return 'Hello, World!'
return "Hello, World!"
Ok, we have the view.

Expand Down Expand Up @@ -170,7 +170,7 @@ Put next into the ``application.py``:
app = Flask(__name__)
app.container = container
app.add_url_rule('/', 'index', views.index)
app.add_url_rule("/", "index", views.index)
return app
Expand Down Expand Up @@ -246,7 +246,7 @@ Edit ``application.py``:
app = Flask(__name__)
app.container = container
app.add_url_rule('/', 'index', views.index)
app.add_url_rule("/", "index", views.index)
bootstrap = Bootstrap()
bootstrap.init_app(app)
Expand Down Expand Up @@ -398,13 +398,13 @@ Edit ``views.py``:
def index():
query = request.args.get('query', 'Dependency Injector')
limit = request.args.get('limit', 10, int)
query = request.args.get("query", "Dependency Injector")
limit = request.args.get("limit", 10, int)
repositories = []
return render_template(
'index.html',
"index.html",
query=query,
limit=limit,
repositories=repositories,
Expand Down Expand Up @@ -553,12 +553,12 @@ Edit ``application.py``:
def create_app() -> Flask:
container = Container()
container.config.from_yaml('config.yml')
container.config.github.auth_token.from_env('GITHUB_TOKEN')
container.config.from_yaml("config.yml")
container.config.github.auth_token.from_env("GITHUB_TOKEN")
app = Flask(__name__)
app.container = container
app.add_url_rule('/', 'index', views.index)
app.add_url_rule("/", "index", views.index)
bootstrap = Bootstrap()
bootstrap.init_app(app)
Expand Down Expand Up @@ -639,7 +639,7 @@ and put next into it:
"""Search for repositories and return formatted data."""
repositories = self._github_client.search_repositories(
query=query,
**{'in': 'name'},
**{"in": "name"},
)
return [
self._format_repo(repository)
Expand All @@ -649,22 +649,22 @@ and put next into it:
def _format_repo(self, repository: Repository):
commits = repository.get_commits()
return {
'url': repository.html_url,
'name': repository.name,
'owner': {
'login': repository.owner.login,
'url': repository.owner.html_url,
'avatar_url': repository.owner.avatar_url,
"url": repository.html_url,
"name": repository.name,
"owner": {
"login": repository.owner.login,
"url": repository.owner.html_url,
"avatar_url": repository.owner.avatar_url,
},
'latest_commit': self._format_commit(commits[0]) if commits else {},
"latest_commit": self._format_commit(commits[0]) if commits else {},
}
def _format_commit(self, commit: Commit):
return {
'sha': commit.sha,
'url': commit.html_url,
'message': commit.commit.message,
'author_name': commit.commit.author.name,
"sha": commit.sha,
"url": commit.html_url,
"message": commit.commit.message,
"author_name": commit.commit.author.name,
}
Now let's add ``SearchService`` to the container.
Expand Down Expand Up @@ -720,13 +720,13 @@ Edit ``views.py``:
@inject
def index(search_service: SearchService = Provide[Container.search_service]):
query = request.args.get('query', 'Dependency Injector')
limit = request.args.get('limit', 10, int)
query = request.args.get("query", "Dependency Injector")
limit = request.args.get("limit", 10, int)
repositories = search_service.search_repositories(query, limit)
return render_template(
'index.html',
"index.html",
query=query,
limit=limit,
repositories=repositories,
Expand All @@ -752,13 +752,13 @@ Edit ``application.py``:
def create_app() -> Flask:
container = Container()
container.config.from_yaml('config.yml')
container.config.github.auth_token.from_env('GITHUB_TOKEN')
container.config.from_yaml("config.yml")
container.config.github.auth_token.from_env("GITHUB_TOKEN")
container.wire(modules=[views])
app = Flask(__name__)
app.container = container
app.add_url_rule('/', 'index', views.index)
app.add_url_rule("/", "index", views.index)
bootstrap = Bootstrap()
bootstrap.init_app(app)
Expand Down Expand Up @@ -801,13 +801,13 @@ Edit ``views.py``:
default_query: str = Provide[Container.config.default.query],
default_limit: int = Provide[Container.config.default.limit.as_int()],
):
query = request.args.get('query', default_query)
limit = request.args.get('limit', default_limit, int)
query = request.args.get("query", default_query)
limit = request.args.get("limit", default_limit, int)
repositories = search_service.search_repositories(query, limit)
return render_template(
'index.html',
"index.html",
query=query,
limit=limit,
repositories=repositories,
Expand Down Expand Up @@ -900,55 +900,55 @@ and put next into it:
github_client_mock = mock.Mock(spec=Github)
github_client_mock.search_repositories.return_value = [
mock.Mock(
html_url='repo1-url',
name='repo1-name',
html_url="repo1-url",
name="repo1-name",
owner=mock.Mock(
login='owner1-login',
html_url='owner1-url',
avatar_url='owner1-avatar-url',
login="owner1-login",
html_url="owner1-url",
avatar_url="owner1-avatar-url",
),
get_commits=mock.Mock(return_value=[mock.Mock()]),
),
mock.Mock(
html_url='repo2-url',
name='repo2-name',
html_url="repo2-url",
name="repo2-name",
owner=mock.Mock(
login='owner2-login',
html_url='owner2-url',
avatar_url='owner2-avatar-url',
login="owner2-login",
html_url="owner2-url",
avatar_url="owner2-avatar-url",
),
get_commits=mock.Mock(return_value=[mock.Mock()]),
),
]
with app.container.github_client.override(github_client_mock):
response = client.get(url_for('index'))
response = client.get(url_for("index"))
assert response.status_code == 200
assert b'Results found: 2' in response.data
assert b"Results found: 2" in response.data
assert b'repo1-url' in response.data
assert b'repo1-name' in response.data
assert b'owner1-login' in response.data
assert b'owner1-url' in response.data
assert b'owner1-avatar-url' in response.data
assert b"repo1-url" in response.data
assert b"repo1-name" in response.data
assert b"owner1-login" in response.data
assert b"owner1-url" in response.data
assert b"owner1-avatar-url" in response.data
assert b'repo2-url' in response.data
assert b'repo2-name' in response.data
assert b'owner2-login' in response.data
assert b'owner2-url' in response.data
assert b'owner2-avatar-url' in response.data
assert b"repo2-url" in response.data
assert b"repo2-name" in response.data
assert b"owner2-login" in response.data
assert b"owner2-url" in response.data
assert b"owner2-avatar-url" in response.data
def test_index_no_results(client, app):
github_client_mock = mock.Mock(spec=Github)
github_client_mock.search_repositories.return_value = []
with app.container.github_client.override(github_client_mock):
response = client.get(url_for('index'))
response = client.get(url_for("index"))
assert response.status_code == 200
assert b'Results found: 0' in response.data
assert b"Results found: 0" in response.data
Now let's run it and check the coverage:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@

def create_app() -> Flask:
container = Container()
container.config.from_yaml('config.yml')
container.config.github.auth_token.from_env('GITHUB_TOKEN')
container.config.from_yaml("config.yml")
container.config.github.auth_token.from_env("GITHUB_TOKEN")
container.wire(modules=[example])

app = Flask(__name__)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,23 @@
from githubnavigator.containers import Container


blueprint = Blueprint('example', __name__, template_folder='templates/')
blueprint = Blueprint("example", __name__, template_folder="templates/")


@blueprint.route('/')
@blueprint.route("/")
@inject
def index(
search_service: SearchService = Provide[Container.search_service],
default_query: str = Provide[Container.config.default.query],
default_limit: int = Provide[Container.config.default.limit.as_int()],
):
query = request.args.get('query', default_query)
limit = request.args.get('limit', default_limit, int)
query = request.args.get("query", default_query)
limit = request.args.get("limit", default_limit, int)

repositories = search_service.search_repositories(query, limit)

return render_template(
'index.html',
"index.html",
query=query,
limit=limit,
repositories=repositories,
Expand Down
24 changes: 12 additions & 12 deletions examples/miniapps/flask-blueprints/githubnavigator/services.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ def search_repositories(self, query, limit):
"""Search for repositories and return formatted data."""
repositories = self._github_client.search_repositories(
query=query,
**{'in': 'name'},
**{"in": "name"},
)
return [
self._format_repo(repository)
Expand All @@ -25,20 +25,20 @@ def search_repositories(self, query, limit):
def _format_repo(self, repository: Repository):
commits = repository.get_commits()
return {
'url': repository.html_url,
'name': repository.name,
'owner': {
'login': repository.owner.login,
'url': repository.owner.html_url,
'avatar_url': repository.owner.avatar_url,
"url": repository.html_url,
"name": repository.name,
"owner": {
"login": repository.owner.login,
"url": repository.owner.html_url,
"avatar_url": repository.owner.avatar_url,
},
'latest_commit': self._format_commit(commits[0]) if commits else {},
"latest_commit": self._format_commit(commits[0]) if commits else {},
}

def _format_commit(self, commit: Commit):
return {
'sha': commit.sha,
'url': commit.html_url,
'message': commit.commit.message,
'author_name': commit.commit.author.name,
"sha": commit.sha,
"url": commit.html_url,
"message": commit.commit.message,
"author_name": commit.commit.author.name,
}
48 changes: 24 additions & 24 deletions examples/miniapps/flask-blueprints/githubnavigator/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,52 +20,52 @@ def test_index(client, app):
github_client_mock = mock.Mock(spec=Github)
github_client_mock.search_repositories.return_value = [
mock.Mock(
html_url='repo1-url',
name='repo1-name',
html_url="repo1-url",
name="repo1-name",
owner=mock.Mock(
login='owner1-login',
html_url='owner1-url',
avatar_url='owner1-avatar-url',
login="owner1-login",
html_url="owner1-url",
avatar_url="owner1-avatar-url",
),
get_commits=mock.Mock(return_value=[mock.Mock()]),
),
mock.Mock(
html_url='repo2-url',
name='repo2-name',
html_url="repo2-url",
name="repo2-name",
owner=mock.Mock(
login='owner2-login',
html_url='owner2-url',
avatar_url='owner2-avatar-url',
login="owner2-login",
html_url="owner2-url",
avatar_url="owner2-avatar-url",
),
get_commits=mock.Mock(return_value=[mock.Mock()]),
),
]

with app.container.github_client.override(github_client_mock):
response = client.get(url_for('example.index'))
response = client.get(url_for("example.index"))

assert response.status_code == 200
assert b'Results found: 2' in response.data
assert b"Results found: 2" in response.data

assert b'repo1-url' in response.data
assert b'repo1-name' in response.data
assert b'owner1-login' in response.data
assert b'owner1-url' in response.data
assert b'owner1-avatar-url' in response.data
assert b"repo1-url" in response.data
assert b"repo1-name" in response.data
assert b"owner1-login" in response.data
assert b"owner1-url" in response.data
assert b"owner1-avatar-url" in response.data

assert b'repo2-url' in response.data
assert b'repo2-name' in response.data
assert b'owner2-login' in response.data
assert b'owner2-url' in response.data
assert b'owner2-avatar-url' in response.data
assert b"repo2-url" in response.data
assert b"repo2-name" in response.data
assert b"owner2-login" in response.data
assert b"owner2-url" in response.data
assert b"owner2-avatar-url" in response.data


def test_index_no_results(client, app):
github_client_mock = mock.Mock(spec=Github)
github_client_mock.search_repositories.return_value = []

with app.container.github_client.override(github_client_mock):
response = client.get(url_for('example.index'))
response = client.get(url_for("example.index"))

assert response.status_code == 200
assert b'Results found: 0' in response.data
assert b"Results found: 0" in response.data
Loading

0 comments on commit c92a941

Please sign in to comment.