[mediasession] Make test deterministic.

A failure didn't show up locally even in thousands of invocations,
but it shows up in CQ sometimes.

This removes everything from the test I think might vary.

TEST: fx run-test mediasession_tests
Change-Id: Ib38aa96dae5444874540239ecdc5312698161c60
diff --git a/bin/mediasession/src/test/integration.rs b/bin/mediasession/src/test/integration.rs
index aecb0a7..3ece36b 100644
--- a/bin/mediasession/src/test/integration.rs
+++ b/bin/mediasession/src/test/integration.rs
@@ -14,7 +14,6 @@
 use fuchsia_app as app;
 use fuchsia_async as fasync;
 use futures::stream::{FusedStream, TryStreamExt};
-use rand::{random, thread_rng, Rng};
 use std::collections::HashMap;
 
 const MEDIASESSION_URL: &str = "fuchsia-pkg://fuchsia.com/mediasession#meta/mediasession.cmx";
@@ -191,27 +190,17 @@
 
     // Publish sessions.
     let session_count: usize = 100;
-    let mut sessions = Vec::new();
+    let mut keep_alive = Vec::new();
     for i in 0..session_count {
         let test_session = TestSession::new().expect(&format!("Test session {}.", i));
         let session_id = await!(test_service.publisher.publish(test_session.client_end))
             .expect(&format!("Session {}", i));
-        sessions.push((session_id, test_session.control_handle));
-    }
-
-    // Randomly queue them up for active session status.
-    thread_rng().shuffle(sessions.as_mut_slice());
-    let mut expected_active_session_changes = Vec::new();
-    for (session_id, control_handle) in &sessions {
-        control_handle
+        test_session
+            .control_handle
             .send_on_playback_status_changed(&mut default_playback_status())
             .expect("To update playback status.");
-        expected_active_session_changes.push(*session_id);
-    }
-
-    // Check all the change events.
-    for expected_id in expected_active_session_changes {
-        await!(test_service.expect_active_session(Some(expected_id)));
+        await!(test_service.expect_active_session(Some(session_id)));
+        keep_alive.push(test_session.control_handle);
     }
 }
 
@@ -292,7 +281,7 @@
     let mut expectations = HashMap::new();
     let mut control_handles_to_keep_sessions_alive = Vec::new();
     for (i, (session_id, control_handle)) in test_sessions.into_iter().enumerate() {
-        let should_drop = random::<usize>() % 3 == 0;
+        let should_drop = i % 3 == 0;
         expectations.insert(
             session_id,
             if should_drop {