Skip to content

Commit

Permalink
Test default catalog usage in the backend (#841)
Browse files Browse the repository at this point in the history
  • Loading branch information
arbulu89 authored Sep 23, 2022
1 parent fae88ed commit 32b5120
Show file tree
Hide file tree
Showing 3 changed files with 99 additions and 0 deletions.
10 changes: 10 additions & 0 deletions test/fixtures/runner/catalog.json
Original file line number Diff line number Diff line change
Expand Up @@ -100,5 +100,15 @@
"remediation": "remediation 5",
"implementation": "implementation 5",
"labels": "labels"
},
{
"id": "1",
"name": "test default 1",
"group": "Group default 1",
"provider": "default",
"description": "description default 1",
"remediation": "remediation default 1",
"implementation": "implementation default 1",
"labels": "labels"
}
]
30 changes: 30 additions & 0 deletions test/trento/application/integration/checks/checks_test.exs
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,17 @@ defmodule Trento.Integration.ChecksTest do
provider: :aws,
remediation: "remediation 5",
premium: false
},
%FlatCheckDto{
description: "description default 1",
group: "Group default 1",
id: "1",
implementation: "implementation default 1",
labels: "labels",
name: "test default 1",
provider: :default,
remediation: "remediation default 1",
premium: false
}
]
}
Expand Down Expand Up @@ -315,6 +326,25 @@ defmodule Trento.Integration.ChecksTest do
}
],
provider: :azure
},
%ProviderDto{
groups: [
%GroupDto{
checks: [
%CheckDto{
description: "description default 1",
id: "1",
implementation: "implementation default 1",
labels: "labels",
name: "test default 1",
premium: false,
remediation: "remediation default 1"
}
],
group: "Group default 1"
}
],
provider: :default
}
]
}
Expand Down
59 changes: 59 additions & 0 deletions test/trento_web/controllers/catalog_controller_test.exs
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,25 @@ defmodule TrentoWeb.CatalogControllerTest do
}
],
"provider" => "azure"
},
%{
"groups" => [
%{
"checks" => [
%{
"description" => "description default 1",
"id" => "1",
"implementation" => "implementation default 1",
"labels" => "labels",
"name" => "test default 1",
"remediation" => "remediation default 1",
"premium" => false
}
],
"group" => "Group default 1"
}
],
"provider" => "default"
}
]

Expand Down Expand Up @@ -231,6 +250,35 @@ defmodule TrentoWeb.CatalogControllerTest do
assert expected_json == json_response(conn, 200)
end

test "should return a default flat catalog when unknown provider is used", %{conn: conn} do
raw_catalog = load_runner_fixture("catalog")

Trento.Integration.Checks.Mock
|> expect(:get_catalog, fn -> FlatCatalogDto.new(%{checks: raw_catalog}) end)

conn =
get(conn, Routes.catalog_path(conn, :checks_catalog), %{
"flat" => "",
"provider" => "unknown"
})

expected_json = [
%{
"provider" => "default",
"description" => "description default 1",
"group" => "Group default 1",
"id" => "1",
"implementation" => "implementation default 1",
"labels" => "labels",
"name" => "test default 1",
"remediation" => "remediation default 1",
"premium" => false
}
]

assert expected_json == json_response(conn, 200)
end

test "should return a flat catalog", %{conn: conn} do
raw_catalog = load_runner_fixture("catalog")

Expand Down Expand Up @@ -352,6 +400,17 @@ defmodule TrentoWeb.CatalogControllerTest do
"provider" => "aws",
"remediation" => "remediation 5",
"premium" => false
},
%{
"provider" => "default",
"description" => "description default 1",
"group" => "Group default 1",
"id" => "1",
"implementation" => "implementation default 1",
"labels" => "labels",
"name" => "test default 1",
"remediation" => "remediation default 1",
"premium" => false
}
]

Expand Down

0 comments on commit 32b5120

Please sign in to comment.