compareSnapshots method

Map<String, dynamic> compareSnapshots(
  1. Map<String, dynamic> snapshot1,
  2. Map<String, dynamic> snapshot2
)

Compare two snapshots and return differences.

Implementation

Map<String, dynamic> compareSnapshots(
    Map<String, dynamic> snapshot1, Map<String, dynamic> snapshot2) {
  final differences = <String, dynamic>{};

  for (final key in {...snapshot1.keys, ...snapshot2.keys}) {
    final val1 = snapshot1[key];
    final val2 = snapshot2[key];

    if (val1 != val2) {
      differences[key] = {'before': val1, 'after': val2};
    }
  }

  return differences;
}