compareTo method

  1. @override
int compareTo(
  1. TestDeviceInfo other
)
override

Compares this object to another object.

Returns a value like a Comparator when comparing this to other. That is, it returns a negative integer if this is ordered before other, a positive integer if this is ordered after other, and zero if this and other are ordered together.

The other argument must be a value that is comparable to this object.

Implementation

@override
int compareTo(TestDeviceInfo other) {
  var result = 0;

  result = os.compareTo(other.os);
  if (result == 0) {
    final thisModel = os == 'ios' ? device : model;

    final otherModel = other.os == 'ios' ? other.device : other.model;
    result = thisModel.toLowerCase().compareTo(otherModel.toLowerCase());
  }
  if (result == 0) {
    result = id.compareTo(other.id);
  }

  return result;
}