コード例 #1
0
def test_cluster_delete():
    cluster = Cluster(
        id=uuid.uuid4(),
        name="name",
        state=ClusterStates.RUNNING,
        create_on=datetime.now(),
    )
    ram_cluster_repo = RamClusterRepository({cluster.id: cluster})

    with app.container.cluster_repo.override(ram_cluster_repo):
        response = test_client.delete("/clusters/" + str(cluster.id))

    with pytest.raises(ClusterNotFound):
        ram_cluster_repo.get(cluster.id)
コード例 #2
0
def test_cluster_create():
    name = "cluster name"
    repo = RamClusterRepository({})

    result = ClusterCreate(repo).execute(name)

    assert isinstance(result, Cluster)
    assert result.state == ClusterStates.PENDING
コード例 #3
0
def test_delete_cluster():
    cluster = Cluster(
        id=uuid.uuid4(),
        name="name",
        state=ClusterStates.RUNNING,
        create_on=datetime.now(),
    )
    repo = RamClusterRepository({cluster.id: cluster})

    ClusterDelete(repo).execute(cluster.id)

    assert not repo.data
コード例 #4
0
def test_get_cluster_by_id():
    cluster = Cluster(
        id=uuid.uuid4(),
        name="name",
        state=ClusterStates.RUNNING,
        create_on=datetime.now(),
    )
    repo = RamClusterRepository({cluster.id: cluster})

    result = ClusterGet(repo).execute(cluster.id)

    assert cluster == result
コード例 #5
0
def test_cluster_get():
    cluster = Cluster(
        id=uuid.uuid4(),
        name="name",
        state=ClusterStates.RUNNING,
        create_on=datetime.now(),
    )
    ram_cluster_repo = RamClusterRepository({cluster.id: cluster})

    with app.container.cluster_repo.override(ram_cluster_repo):
        response = test_client.get("/clusters/" + str(cluster.id))

    assert Cluster(**response.json()) == cluster
コード例 #6
0
def test_list_all_clusters():
    data = {}
    for i in range(4):
        id = uuid.uuid4()
        data[id] = Cluster(
            id=id,
            name=f"name-{i}",
            state=ClusterStates.RUNNING,
            create_on=datetime.now(),
        )
    repo = RamClusterRepository(data)

    result = ClusterList(repo).execute()

    assert result == list(data.values())
コード例 #7
0
def test_cluster_list():
    data = {}
    for i in range(4):
        id = uuid.uuid4()
        data[id] = Cluster(
            id=id,
            name=f"name-{i}",
            state=ClusterStates.RUNNING,
            create_on=datetime.now(),
        )
    ram_cluster_repo = RamClusterRepository(data)

    with app.container.cluster_repo.override(ram_cluster_repo):
        response = test_client.get("/clusters")

    assert len(response.json()) == 4
コード例 #8
0
def test_cluster_create():
    ram_cluster_repo = RamClusterRepository({})
    with app.container.cluster_repo.override(ram_cluster_repo):
        result = runner.invoke(app, ["cluster", "create", "name"])
    assert ram_cluster_repo.list()[0].name == "name"
コード例 #9
0
def test_list_zero_clusters():
    ram_cluster_repo = RamClusterRepository({})
    with app.container.cluster_repo.override(ram_cluster_repo):
        result = runner.invoke(app, ["cluster", "list"])
    assert result.exit_code == 0
    assert result.output == ""
コード例 #10
0
def test_cluster_create():
    ram_cluster_repo = RamClusterRepository({})
    with app.container.cluster_repo.override(ram_cluster_repo):
        response = test_client.post("/clusters", json={"name": "cluster_name"})
        ram_cluster_repo.get(uuid.UUID(response.json()["id"]))