Skip to content

Commit ecd827b

Browse files
authored
Use label alongside server version to check (#4)
1 parent 985536e commit ecd827b

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

tests/cloud_first_test.rs

+9-3
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,27 @@ async fn testcontainers_cloud_docker_engine() -> Result<(), Box<dyn std::error::
1111
let client = docker_client_instance().await?;
1212
let info = client.info().await?;
1313

14+
let contains_cloud_label = info
15+
.labels
16+
.as_ref()
17+
.map(|labels| labels.iter().any(|label| label.contains("cloud.docker.run.version")))
18+
.unwrap_or(false);
19+
1420
let contains_cloud =
1521
matches!(info.server_version.as_ref(), Some(v) if v.contains("testcontainerscloud"));
1622
let contains_desktop =
1723
matches!(info.server_version.as_ref(), Some(v) if v.contains("Testcontainers Desktop"));
1824

19-
if !(contains_cloud || contains_desktop) {
25+
if !(contains_cloud || contains_desktop || contains_cloud_label) {
2026
Err(TestcontainersDesktopNotFound)?
2127
}
2228

2329
let runtime = Some("Testcontainers Cloud")
24-
.filter(|_| contains_cloud)
30+
.filter(|_| contains_cloud || contains_cloud_label)
2531
.or(info.operating_system.as_deref())
2632
.unwrap_or("unknown");
2733
let runtime = if contains_desktop {
28-
format!("{runtime} via Testcontainers Desktop app")
34+
format!("{runtime} via Testcontainers Desktop")
2935
} else {
3036
runtime.to_string()
3137
};

0 commit comments

Comments
 (0)