mapsEqual method
Implementation
bool mapsEqual(Map m1, Map m2) {
Iterable k1 = m1.keys;
Iterable k2 = m2.keys;
// Compare m1 to m2
if (k1.length != k2.length) return false;
for (dynamic o in k1) {
if (!k2.contains(o)) return false;
if (m1[o] is Map) {
if (!(m2[o] is Map)) return false;
if (!mapsEqual(m1[o], m2[o])) return false;
} else {
if (m1[o] != m2[o]) return false;
}
}
return true;
}