validateIntegrity method

  1. @override
VerificationContext validateIntegrity(
  1. Insertable<BatteryAuditData> instance, {
  2. bool isInserting = false,
})

Validates that the given entity can be inserted into this table, meaning that it respects all constraints (nullability, text length, etc.).

Implementation

@override
VerificationContext validateIntegrity(Insertable<BatteryAuditData> instance,
    {bool isInserting = false}) {
  final context = VerificationContext();
  final data = instance.toColumns(true);
  if (data.containsKey('id')) {
    context.handle(_idMeta, id.isAcceptableOrUnknown(data['id']!, _idMeta));
  }
  if (data.containsKey('created_at')) {
    context.handle(_createdAtMeta,
        createdAt.isAcceptableOrUnknown(data['created_at']!, _createdAtMeta));
  }
  if (data.containsKey('percentage')) {
    context.handle(
        _percentageMeta,
        percentage.isAcceptableOrUnknown(
            data['percentage']!, _percentageMeta));
  } else if (isInserting) {
    context.missing(_percentageMeta);
  }
  if (data.containsKey('is_charging')) {
    context.handle(
        _isChargingMeta,
        isCharging.isAcceptableOrUnknown(
            data['is_charging']!, _isChargingMeta));
  } else if (isInserting) {
    context.missing(_isChargingMeta);
  }
  context.handle(_statusMeta, const VerificationResult.success());
  if (data.containsKey('capacity')) {
    context.handle(_capacityMeta,
        capacity.isAcceptableOrUnknown(data['capacity']!, _capacityMeta));
  } else if (isInserting) {
    context.missing(_capacityMeta);
  }
  if (data.containsKey('is_screen_on')) {
    context.handle(
        _isScreenOnMeta,
        isScreenOn.isAcceptableOrUnknown(
            data['is_screen_on']!, _isScreenOnMeta));
  } else if (isInserting) {
    context.missing(_isScreenOnMeta);
  }
  return context;
}