Example #1
0
def test_homepage_with_contents(client):
    """Start with a test database."""

    populate_test_data(db.session)
    db.session.commit()

    rv = client.get("/")

    assert b"No packages available" not in rv.data and b"packagetile" in rv.data
Example #2
0
def test_homepage_with_contents(client):
    """Start with a test database."""

    populate_test_data(db.session)
    db.session.commit()

    rv = client.get("/")

    assert b"packagegridscrub" in rv.data
Example #3
0
def test_dependencies(client):
    """Start with a test database."""

    populate_test_data(db.session)
    db.session.commit()

    deps = parse_json(
        client.get("/api/packages/rubenwardy/food_sweet/dependencies/").data)
    deps = deps["rubenwardy/food_sweet"]

    assert len(deps) == 1
    assert not deps[0]["is_optional"]
    assert len(deps[0]["packages"]) == 1
    assert deps[0]["packages"][0] == "rubenwardy/food"
Example #4
0
def test_packages_with_contents(client):
    """Start with a test database."""

    populate_test_data(db.session)
    db.session.commit()

    rv = client.get("/api/packages/")

    packages = parse_json(rv.data)

    assert len(packages) > 0
    assert len(packages) == Package.query.filter_by(approved=True).count()

    validate_package_list(packages)
Example #5
0
def test_packages_with_query(client):
    """Start with a test database."""

    populate_test_data(db.session)
    db.session.commit()

    rv = client.get("/api/packages/?q=food")

    packages = parse_json(rv.data)

    assert len(packages) == 2

    validate_package_list(packages)

    assert (packages[0]["name"] == "food" and packages[1]["name"] == "food_sweet") or \
     (packages[1]["name"] == "food" and packages[0]["name"] == "food_sweet")
Example #6
0
def test_packages_with_protocol_low(client):
    """Start with a test database."""

    populate_test_data(db.session)
    db.session.commit()

    rv = client.get("/api/packages/?protocol_version=20")

    packages = parse_json(rv.data)

    assert len(packages) == 4

    for package in packages:
        assert package["name"] != "awards"

    validate_package_list(packages, True)
Example #7
0
def test_packages_with_protocol_multi_high(client):
	"""Start with a test database."""

	populate_test_data(db.session)
	db.session.commit()

	rv = client.get("/api/packages/?protocol_version=100")

	packages = parse_json(rv.data)

	for package in packages:
		assert package["name"] != "mesecons"
		assert package["name"] != "handholds"

	assert len(packages) == 4

	validate_package_list(packages, True)
Example #8
0
if not "FLASK_CONFIG" in os.environ:
    os.environ["FLASK_CONFIG"] = "../config.cfg"

delete_db = len(sys.argv) >= 2 and sys.argv[1].strip() == "-d"
create_db = not (len(sys.argv) >= 2 and sys.argv[1].strip() == "-o")
test_data = len(sys.argv) >= 2 and sys.argv[1].strip() == "-t" or not create_db

# Allow finding the `app` module
currentdir = os.path.dirname(
    os.path.abspath(inspect.getfile(inspect.currentframe())))
parentdir = os.path.dirname(currentdir)
sys.path.insert(0, parentdir)

from app.models import db, User, UserRank
from app.default_data import populate, populate_test_data

if delete_db and os.path.isfile("db.sqlite"):
    os.remove("db.sqlite")

if create_db:
    print("Creating database tables...")
    db.create_all()

print("Filling database...")

populate(db.session)
if test_data:
    populate_test_data(db.session)

db.session.commit()