Send multiple scheduler frame timelines (fix).

Fix the revert and added extra unit test asserts (fail on previous CL
but passes on this CL!!).

Bug: 198192508
Bug: 204941507
Test: atest EventThreadTest; atest ChoreographerNativeTest

Change-Id: Ib9d8df901fab72cae2cee86692d983c6e02d9c2c
diff --git a/services/surfaceflinger/Scheduler/EventThread.cpp b/services/surfaceflinger/Scheduler/EventThread.cpp
index e07eae7..455289f 100644
--- a/services/surfaceflinger/Scheduler/EventThread.cpp
+++ b/services/surfaceflinger/Scheduler/EventThread.cpp
@@ -560,8 +560,8 @@
     }
 }
 
-int64_t EventThread::generateToken(nsecs_t timestamp, nsecs_t expectedVSyncTimestamp,
-                                   nsecs_t deadlineTimestamp) const {
+int64_t EventThread::generateToken(nsecs_t timestamp, nsecs_t deadlineTimestamp,
+                                   nsecs_t expectedVSyncTimestamp) const {
     if (mTokenManager != nullptr) {
         return mTokenManager->generateTokenForPredictions(
                 {timestamp, deadlineTimestamp, expectedVSyncTimestamp});
@@ -586,7 +586,7 @@
                 nsecs_t expectedVSync =
                         event.vsync.expectedVSyncTimestamp + multiplier * event.vsync.frameInterval;
                 event.vsync.frameTimelines[currentIndex] =
-                        {.vsyncId = generateToken(event.header.timestamp, expectedVSync, deadline),
+                        {.vsyncId = generateToken(event.header.timestamp, deadline, expectedVSync),
                          .deadlineTimestamp = deadline,
                          .expectedVSyncTimestamp = expectedVSync};
             }