fix(llc, persistence): remove default value of user.createdAt, updatedAt.

Signed-off-by: xsahil03x <[email protected]>
This commit is contained in:
Sahil Kumar
2023-05-24 17:48:11 +05:30
committed by xsahil03x
parent 63d1fc1aed
commit a1b21892e8
5 changed files with 46 additions and 46 deletions
@@ -35,8 +35,8 @@ class User extends Equatable {
this.role, this.role,
String? name, String? name,
String? image, String? image,
DateTime? createdAt, this.createdAt,
DateTime? updatedAt, this.updatedAt,
this.lastActive, this.lastActive,
Map<String, Object?> extraData = const {}, Map<String, Object?> extraData = const {},
this.online = false, this.online = false,
@@ -44,8 +44,7 @@ class User extends Equatable {
this.banExpires, this.banExpires,
this.teams = const [], this.teams = const [],
this.language, this.language,
}) : createdAt = createdAt ?? DateTime.now(), }) :
updatedAt = updatedAt ?? DateTime.now(),
// For backwards compatibility, set 'name', 'image' in [extraData]. // For backwards compatibility, set 'name', 'image' in [extraData].
extraData = { extraData = {
...extraData, ...extraData,
@@ -104,11 +103,11 @@ class User extends Equatable {
/// Date of user creation. /// Date of user creation.
@JsonKey(includeToJson: false) @JsonKey(includeToJson: false)
final DateTime createdAt; final DateTime? createdAt;
/// Date of last user update. /// Date of last user update.
@JsonKey(includeToJson: false) @JsonKey(includeToJson: false)
final DateTime updatedAt; final DateTime? updatedAt;
/// Date of last user connection. /// Date of last user connection.
@JsonKey(includeToJson: false) @JsonKey(includeToJson: false)
@@ -3651,18 +3651,14 @@ class $UsersTable extends Users with TableInfo<$UsersTable, UserEntity> {
const VerificationMeta('createdAt'); const VerificationMeta('createdAt');
@override @override
late final GeneratedColumn<DateTime> createdAt = GeneratedColumn<DateTime>( late final GeneratedColumn<DateTime> createdAt = GeneratedColumn<DateTime>(
'created_at', aliasedName, false, 'created_at', aliasedName, true,
type: DriftSqlType.dateTime, type: DriftSqlType.dateTime, requiredDuringInsert: false);
requiredDuringInsert: false,
defaultValue: currentDateAndTime);
static const VerificationMeta _updatedAtMeta = static const VerificationMeta _updatedAtMeta =
const VerificationMeta('updatedAt'); const VerificationMeta('updatedAt');
@override @override
late final GeneratedColumn<DateTime> updatedAt = GeneratedColumn<DateTime>( late final GeneratedColumn<DateTime> updatedAt = GeneratedColumn<DateTime>(
'updated_at', aliasedName, false, 'updated_at', aliasedName, true,
type: DriftSqlType.dateTime, type: DriftSqlType.dateTime, requiredDuringInsert: false);
requiredDuringInsert: false,
defaultValue: currentDateAndTime);
static const VerificationMeta _lastActiveMeta = static const VerificationMeta _lastActiveMeta =
const VerificationMeta('lastActive'); const VerificationMeta('lastActive');
@override @override
@@ -3773,9 +3769,9 @@ class $UsersTable extends Users with TableInfo<$UsersTable, UserEntity> {
language: attachedDatabase.typeMapping language: attachedDatabase.typeMapping
.read(DriftSqlType.string, data['${effectivePrefix}language']), .read(DriftSqlType.string, data['${effectivePrefix}language']),
createdAt: attachedDatabase.typeMapping createdAt: attachedDatabase.typeMapping
.read(DriftSqlType.dateTime, data['${effectivePrefix}created_at'])!, .read(DriftSqlType.dateTime, data['${effectivePrefix}created_at']),
updatedAt: attachedDatabase.typeMapping updatedAt: attachedDatabase.typeMapping
.read(DriftSqlType.dateTime, data['${effectivePrefix}updated_at'])!, .read(DriftSqlType.dateTime, data['${effectivePrefix}updated_at']),
lastActive: attachedDatabase.typeMapping lastActive: attachedDatabase.typeMapping
.read(DriftSqlType.dateTime, data['${effectivePrefix}last_active']), .read(DriftSqlType.dateTime, data['${effectivePrefix}last_active']),
online: attachedDatabase.typeMapping online: attachedDatabase.typeMapping
@@ -3808,10 +3804,10 @@ class UserEntity extends DataClass implements Insertable<UserEntity> {
final String? language; final String? language;
/// Date of user creation /// Date of user creation
final DateTime createdAt; final DateTime? createdAt;
/// Date of last user update /// Date of last user update
final DateTime updatedAt; final DateTime? updatedAt;
/// Date of last user connection /// Date of last user connection
final DateTime? lastActive; final DateTime? lastActive;
@@ -3828,8 +3824,8 @@ class UserEntity extends DataClass implements Insertable<UserEntity> {
{required this.id, {required this.id,
this.role, this.role,
this.language, this.language,
required this.createdAt, this.createdAt,
required this.updatedAt, this.updatedAt,
this.lastActive, this.lastActive,
required this.online, required this.online,
required this.banned, required this.banned,
@@ -3844,8 +3840,12 @@ class UserEntity extends DataClass implements Insertable<UserEntity> {
if (!nullToAbsent || language != null) { if (!nullToAbsent || language != null) {
map['language'] = Variable<String>(language); map['language'] = Variable<String>(language);
} }
map['created_at'] = Variable<DateTime>(createdAt); if (!nullToAbsent || createdAt != null) {
map['updated_at'] = Variable<DateTime>(updatedAt); map['created_at'] = Variable<DateTime>(createdAt);
}
if (!nullToAbsent || updatedAt != null) {
map['updated_at'] = Variable<DateTime>(updatedAt);
}
if (!nullToAbsent || lastActive != null) { if (!nullToAbsent || lastActive != null) {
map['last_active'] = Variable<DateTime>(lastActive); map['last_active'] = Variable<DateTime>(lastActive);
} }
@@ -3865,8 +3865,8 @@ class UserEntity extends DataClass implements Insertable<UserEntity> {
id: serializer.fromJson<String>(json['id']), id: serializer.fromJson<String>(json['id']),
role: serializer.fromJson<String?>(json['role']), role: serializer.fromJson<String?>(json['role']),
language: serializer.fromJson<String?>(json['language']), language: serializer.fromJson<String?>(json['language']),
createdAt: serializer.fromJson<DateTime>(json['createdAt']), createdAt: serializer.fromJson<DateTime?>(json['createdAt']),
updatedAt: serializer.fromJson<DateTime>(json['updatedAt']), updatedAt: serializer.fromJson<DateTime?>(json['updatedAt']),
lastActive: serializer.fromJson<DateTime?>(json['lastActive']), lastActive: serializer.fromJson<DateTime?>(json['lastActive']),
online: serializer.fromJson<bool>(json['online']), online: serializer.fromJson<bool>(json['online']),
banned: serializer.fromJson<bool>(json['banned']), banned: serializer.fromJson<bool>(json['banned']),
@@ -3880,8 +3880,8 @@ class UserEntity extends DataClass implements Insertable<UserEntity> {
'id': serializer.toJson<String>(id), 'id': serializer.toJson<String>(id),
'role': serializer.toJson<String?>(role), 'role': serializer.toJson<String?>(role),
'language': serializer.toJson<String?>(language), 'language': serializer.toJson<String?>(language),
'createdAt': serializer.toJson<DateTime>(createdAt), 'createdAt': serializer.toJson<DateTime?>(createdAt),
'updatedAt': serializer.toJson<DateTime>(updatedAt), 'updatedAt': serializer.toJson<DateTime?>(updatedAt),
'lastActive': serializer.toJson<DateTime?>(lastActive), 'lastActive': serializer.toJson<DateTime?>(lastActive),
'online': serializer.toJson<bool>(online), 'online': serializer.toJson<bool>(online),
'banned': serializer.toJson<bool>(banned), 'banned': serializer.toJson<bool>(banned),
@@ -3893,8 +3893,8 @@ class UserEntity extends DataClass implements Insertable<UserEntity> {
{String? id, {String? id,
Value<String?> role = const Value.absent(), Value<String?> role = const Value.absent(),
Value<String?> language = const Value.absent(), Value<String?> language = const Value.absent(),
DateTime? createdAt, Value<DateTime?> createdAt = const Value.absent(),
DateTime? updatedAt, Value<DateTime?> updatedAt = const Value.absent(),
Value<DateTime?> lastActive = const Value.absent(), Value<DateTime?> lastActive = const Value.absent(),
bool? online, bool? online,
bool? banned, bool? banned,
@@ -3903,8 +3903,8 @@ class UserEntity extends DataClass implements Insertable<UserEntity> {
id: id ?? this.id, id: id ?? this.id,
role: role.present ? role.value : this.role, role: role.present ? role.value : this.role,
language: language.present ? language.value : this.language, language: language.present ? language.value : this.language,
createdAt: createdAt ?? this.createdAt, createdAt: createdAt.present ? createdAt.value : this.createdAt,
updatedAt: updatedAt ?? this.updatedAt, updatedAt: updatedAt.present ? updatedAt.value : this.updatedAt,
lastActive: lastActive.present ? lastActive.value : this.lastActive, lastActive: lastActive.present ? lastActive.value : this.lastActive,
online: online ?? this.online, online: online ?? this.online,
banned: banned ?? this.banned, banned: banned ?? this.banned,
@@ -3948,8 +3948,8 @@ class UsersCompanion extends UpdateCompanion<UserEntity> {
final Value<String> id; final Value<String> id;
final Value<String?> role; final Value<String?> role;
final Value<String?> language; final Value<String?> language;
final Value<DateTime> createdAt; final Value<DateTime?> createdAt;
final Value<DateTime> updatedAt; final Value<DateTime?> updatedAt;
final Value<DateTime?> lastActive; final Value<DateTime?> lastActive;
final Value<bool> online; final Value<bool> online;
final Value<bool> banned; final Value<bool> banned;
@@ -4010,8 +4010,8 @@ class UsersCompanion extends UpdateCompanion<UserEntity> {
{Value<String>? id, {Value<String>? id,
Value<String?>? role, Value<String?>? role,
Value<String?>? language, Value<String?>? language,
Value<DateTime>? createdAt, Value<DateTime?>? createdAt,
Value<DateTime>? updatedAt, Value<DateTime?>? updatedAt,
Value<DateTime?>? lastActive, Value<DateTime?>? lastActive,
Value<bool>? online, Value<bool>? online,
Value<bool>? banned, Value<bool>? banned,
@@ -15,10 +15,10 @@ class Users extends Table {
TextColumn get language => text().nullable()(); TextColumn get language => text().nullable()();
/// Date of user creation /// Date of user creation
DateTimeColumn get createdAt => dateTime().withDefault(currentDateAndTime)(); DateTimeColumn get createdAt => dateTime().nullable()();
/// Date of last user update /// Date of last user update
DateTimeColumn get updatedAt => dateTime().withDefault(currentDateAndTime)(); DateTimeColumn get updatedAt => dateTime().nullable()();
/// Date of last user connection /// Date of last user connection
DateTimeColumn get lastActive => dateTime().nullable()(); DateTimeColumn get lastActive => dateTime().nullable()();
@@ -27,7 +27,7 @@ void main() {
expect(user.language, entity.language); expect(user.language, entity.language);
expect(user.createdAt, isSameDateAs(entity.createdAt)); expect(user.createdAt, isSameDateAs(entity.createdAt));
expect(user.updatedAt, isSameDateAs(entity.updatedAt)); expect(user.updatedAt, isSameDateAs(entity.updatedAt));
expect(user.lastActive, isSameDateAs(entity.lastActive!)); expect(user.lastActive, isSameDateAs(entity.lastActive));
expect(user.online, entity.online); expect(user.online, entity.online);
expect(user.banned, entity.banned); expect(user.banned, entity.banned);
expect(user.extraData, entity.extraData); expect(user.extraData, entity.extraData);
@@ -1,21 +1,22 @@
import 'package:flutter_test/flutter_test.dart'; import 'package:flutter_test/flutter_test.dart';
Matcher isSameDateAs(DateTime targetDate) => Matcher isSameDateAs(DateTime? targetDate) =>
_IsSameDateAs(targetDate: targetDate); _IsSameDateAs(targetDate: targetDate);
class _IsSameDateAs extends Matcher { class _IsSameDateAs extends Matcher {
const _IsSameDateAs({required this.targetDate}); const _IsSameDateAs({required this.targetDate});
final DateTime targetDate; final DateTime? targetDate;
@override @override
bool matches(covariant DateTime date, Map matchState) => bool matches(covariant DateTime date, Map matchState) {
date.year == targetDate.year && return date.year == targetDate?.year &&
date.month == targetDate.month && date.month == targetDate?.month &&
date.day == targetDate.day && date.day == targetDate?.day &&
date.hour == targetDate.hour && date.hour == targetDate?.hour &&
date.minute == targetDate.minute && date.minute == targetDate?.minute &&
date.second == targetDate.second; date.second == targetDate?.second;
}
@override @override
Description describe(Description description) => Description describe(Description description) =>