diff --git a/tests/end_to_end_cases/management_cli.rs b/tests/end_to_end_cases/management_cli.rs
index 6ecbb7bab3..1e8840350c 100644
--- a/tests/end_to_end_cases/management_cli.rs
+++ b/tests/end_to_end_cases/management_cli.rs
@@ -185,6 +185,18 @@ async fn test_create_database_immutable() {
 
 const DELETED_DB_DATETIME: &str = r#"[\d-]+\s[\d:\.]+\s[A-Z]+"#;
 
+fn deleted_db_match(db: &str, generation_id: usize) -> predicates::str::RegexPredicate {
+    predicate::str::is_match(format!(
+        r#"(?m)^{}\s+{}\s+{}$"#,
+        DELETED_DB_DATETIME, generation_id, db
+    ))
+    .unwrap()
+}
+
+fn active_db_match(db: &str, generation_id: usize) -> predicates::str::RegexPredicate {
+    predicate::str::is_match(format!(r#"(?m)^\s+{}\s+{}$"#, generation_id, db)).unwrap()
+}
+
 #[tokio::test]
 async fn delete_database() {
     let server_fixture = ServerFixture::create_shared().await;
@@ -236,7 +248,7 @@ async fn delete_database() {
         .arg(addr)
         .assert()
         .success()
-        .stdout(predicate::str::is_match(format!(r#"(?m)^\s+0\s+{}$"#, db)).unwrap());
+        .stdout(active_db_match(db, 0));
 
     // Delete the database
     Command::cargo_bin("influxdb_iox")
@@ -271,10 +283,7 @@ async fn delete_database() {
         .arg(addr)
         .assert()
         .success()
-        .stdout(
-            predicate::str::is_match(format!(r#"(?m)^{}\s+0\s+{}$"#, DELETED_DB_DATETIME, db))
-                .unwrap(),
-        );
+        .stdout(deleted_db_match(db, 0));
 
     // Listing detailed database info does include the deleted database
     Command::cargo_bin("influxdb_iox")
@@ -286,10 +295,7 @@ async fn delete_database() {
         .arg(addr)
         .assert()
         .success()
-        .stdout(
-            predicate::str::is_match(format!(r#"(?m)^{}\s+0\s+{}$"#, DELETED_DB_DATETIME, db))
-                .unwrap(),
-        );
+        .stdout(deleted_db_match(db, 0));
 
     // Deleting the database again is an error
     Command::cargo_bin("influxdb_iox")
@@ -338,10 +344,7 @@ async fn delete_database() {
         .arg(addr)
         .assert()
         .success()
-        .stdout(
-            predicate::str::is_match(format!(r#"(?m)^{}\s+0\s+{}$"#, DELETED_DB_DATETIME, db))
-                .unwrap(),
-        );
+        .stdout(deleted_db_match(db, 0));
 
     // Listing detailed database info includes both active and deleted
     Command::cargo_bin("influxdb_iox")
@@ -353,11 +356,7 @@ async fn delete_database() {
         .arg(addr)
         .assert()
         .success()
-        .stdout(
-            predicate::str::is_match(format!(r#"(?m)^{}\s+0\s+{}$"#, DELETED_DB_DATETIME, db))
-                .unwrap()
-                .and(predicate::str::is_match(format!(r#"(?m)^\s+1\s+{}$"#, db)).unwrap()),
-        );
+        .stdout(deleted_db_match(db, 0).and(active_db_match(db, 1)));
 
     // Delete the 2nd database
     Command::cargo_bin("influxdb_iox")
@@ -392,17 +391,7 @@ async fn delete_database() {
         .arg(addr)
         .assert()
         .success()
-        .stdout(
-            predicate::str::is_match(format!(r#"(?m)^{}\s+0\s+{}$"#, DELETED_DB_DATETIME, db))
-                .unwrap()
-                .and(
-                    predicate::str::is_match(format!(
-                        r#"(?m)^{}\s+1\s+{}$"#,
-                        DELETED_DB_DATETIME, db
-                    ))
-                    .unwrap(),
-                ),
-        );
+        .stdout(deleted_db_match(db, 0).and(deleted_db_match(db, 1)));
 
     // Listing detailed database info includes both deleted generations
     Command::cargo_bin("influxdb_iox")
@@ -414,17 +403,7 @@ async fn delete_database() {
         .arg(addr)
         .assert()
         .success()
-        .stdout(
-            predicate::str::is_match(format!(r#"(?m)^{}\s+0\s+{}$"#, DELETED_DB_DATETIME, db))
-                .unwrap()
-                .and(
-                    predicate::str::is_match(format!(
-                        r#"(?m)^{}\s+1\s+{}$"#,
-                        DELETED_DB_DATETIME, db
-                    ))
-                    .unwrap(),
-                ),
-        );
+        .stdout(deleted_db_match(db, 0).and(deleted_db_match(db, 1)));
 
     // Restore generation 0
     Command::cargo_bin("influxdb_iox")
@@ -463,17 +442,7 @@ async fn delete_database() {
         .arg(addr)
         .assert()
         .success()
-        .stdout(
-            predicate::str::is_match(format!(r#"(?m)^{}\s+0\s+{}$"#, DELETED_DB_DATETIME, db))
-                .unwrap().not()
-                .and(
-                    predicate::str::is_match(format!(
-                        r#"(?m)^{}\s+1\s+{}$"#,
-                        DELETED_DB_DATETIME, db
-                    ))
-                    .unwrap(),
-                ),
-        );
+        .stdout(deleted_db_match(db, 0).not().and(deleted_db_match(db, 1)));
 
     // Listing detailed database info includes both active and deleted
     Command::cargo_bin("influxdb_iox")
@@ -485,12 +454,7 @@ async fn delete_database() {
         .arg(addr)
         .assert()
         .success()
-        .stdout(
-            predicate::str::is_match(format!(r#"(?m)^{}\s+1\s+{}$"#, DELETED_DB_DATETIME, db))
-                .unwrap()
-                .and(predicate::str::is_match(format!(r#"(?m)^\s+0\s+{}$"#, db)).unwrap()),
-        );
-
+        .stdout(active_db_match(db, 0).and(deleted_db_match(db, 1)));
 }
 
 #[tokio::test]