from flask import Flask, render_template
import csv
app = Flask(__name__)
@app.route("/")
def main():
planets = read_csv_file('planets.csv')
return render_template('main.html',
title = "Planets",
planets = planets,
)
def read_csv_file(filename):
planets = []
with open(filename) as fh:
rd = csv.DictReader(fh, delimiter=',')
for row in rd:
planets.append(row)
return planets
<h1>{{ title }}</h1>
<table>
{% for planet in planets %}
<tr>
<td>{{ planet['Planet name'] }}</td>
<td>{{ planet['Distance (AU)'] }}</td>
<td>{{ planet['Mass'] }}</td>
</tr>
{% endfor %}
</table>
import app
def test_app():
web = app.app.test_client()
rv = web.get('/')
assert rv.status == '200 OK'
assert b'<h1>Planets</h1>' in rv.data
assert b'<td>Mercury</td>' in rv.data