Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion lib/src/mock_data_snapshot.dart
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ class MockDataSnapshot extends Mock implements DataSnapshot {
if (value is Map) {
return value
.map((key, value) =>
MapEntry(key, MockDataSnapshot(_ref.child(key), value)))
MapEntry(key, MockDataSnapshot(_ref.child(key as String), value)))
.values;
} else if (value is List) {
var index = 0;
Expand Down
19 changes: 10 additions & 9 deletions lib/src/mock_database_reference.dart
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ class MockDatabaseReference extends Mock implements DatabaseReference {

MockDatabaseReference([this._volatileData]);

MockDatabaseReference._(nodePath, [this._volatileData]) {
MockDatabaseReference._(String nodePath, [this._volatileData]) {
_nodePath += nodePath;
}

Expand All @@ -31,11 +31,12 @@ class MockDatabaseReference extends Mock implements DatabaseReference {
return _volatileData;
}

set _data(data) {
set _data(Map<String, dynamic>? data) {
if (MockFirebaseDatabase.persistData) {
_persistedData = data;
} else
return _volatileData = data;
} else {
_volatileData = data;
}
}

@override
Expand Down Expand Up @@ -70,7 +71,7 @@ class MockDatabaseReference extends Mock implements DatabaseReference {
value = _parseValue(value);

if (_nodePath == '/') {
_data = value;
_data = value as Map<String, dynamic>?;
return;
}

Expand All @@ -87,15 +88,15 @@ class MockDatabaseReference extends Mock implements DatabaseReference {

@override
Future<void> update(Map<String, Object?> value) async {
value = _parseValue(value);
value = _parseValue(value) as Map<String, Object?>;
Map<String, dynamic> _baseData = _getDataHandle(_nodePath, _data, true)!;

if (key != null && _baseData[key] == null) {
_baseData[key!] = <String, dynamic>{};
}

if (key != null) {
_baseData = _baseData[key]!;
_baseData = _baseData[key]! as Map<String, dynamic>;
}

for (var _key in value.keys) {
Expand Down Expand Up @@ -166,7 +167,7 @@ class MockDatabaseReference extends Mock implements DatabaseReference {
_data[segment] = <String, dynamic>{};
}

_data = _data[segment];
_data = _data[segment] as Map<String, dynamic>?;
}

return _data;
Expand All @@ -188,7 +189,7 @@ class MockDatabaseReference extends Mock implements DatabaseReference {
break;
}
if (tempData[nodePath] is Map) {
tempData = tempData[nodePath];
tempData = tempData[nodePath] as Map<String, dynamic>?;
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion lib/src/mock_firebase_database.dart
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import 'mock_database_reference.dart';
class MockFirebaseDatabase extends Mock implements FirebaseDatabase {
static FirebaseDatabase get instance => MockFirebaseDatabase();

static get persistData => _persistData;
static bool get persistData => _persistData;

Map<String, dynamic> _volatileData = <String, dynamic>{};

Expand Down