blob: b32e48a1a39eae147d51c7738884963dccd254a6 [file] [log] [blame]
// Copyright 2021 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
mod lib;
use {
crate::lib::run_test,
fidl_fuchsia_test_manager::{CaseStatus, SuiteStatus},
test_manager_test_lib::{GroupRunEventByTestCase as _, RunEvent},
};
#[fuchsia_async::run_singlethreaded(test)]
async fn launch_and_run_hugetest() {
let test_url = "fuchsia-pkg://fuchsia.com/rust-test-runner-example#meta/huge_rust_tests.cm";
let (events, _logs) = run_test(test_url, false, Some(100), vec![]).await.unwrap();
let events = events.into_iter().group_by_test_case_unordered();
let mut expected_events = vec![RunEvent::suite_started()];
for i in 1..=1000 {
let s = format!("test_{}", i);
expected_events.extend(vec![
RunEvent::case_found(&s),
RunEvent::case_started(&s),
RunEvent::case_stopped(&s, CaseStatus::Passed),
RunEvent::case_finished(s),
])
}
expected_events.push(RunEvent::suite_stopped(SuiteStatus::Passed));
let expected_events = expected_events.into_iter().group_by_test_case_unordered();
assert_eq!(expected_events, events);
}