Changed the [createUser] method to accept a uid for the document
This commit is contained in:
parent
0b06d86d0a
commit
5d4fa06382
3 changed files with 12 additions and 5 deletions
|
|
@ -43,10 +43,11 @@ class FirestoreProvider {
|
|||
}
|
||||
|
||||
/// Creates a new instance of a user in Firestore.
|
||||
Future<void> createUser(UserModel user) async {
|
||||
Future<void> createUser(UserModel user, String uid) async {
|
||||
try {
|
||||
final dataMap = user.toFirestoreMap();
|
||||
await _firestore.collection('users').add(dataMap);
|
||||
final documentReference = _firestore.collection('users').document(uid);
|
||||
await documentReference.setData(dataMap);
|
||||
} catch (e) {
|
||||
print('Error creating user: $e');
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,5 +12,9 @@ class Repository {
|
|||
final _firestoreProvider = FirestoreProvider();
|
||||
final _googleSignInProvider = GoogleSignInProvider();
|
||||
|
||||
Observable<UserModel> getUser(String username) {}
|
||||
Observable<UserModel> getUser(String username) {
|
||||
return _firestoreProvider.getUser(username);
|
||||
}
|
||||
|
||||
Future<void> createUser(UserModel user) {}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -47,13 +47,15 @@ main() {
|
|||
test('should create a user', () {
|
||||
final firestore = MockFirestore();
|
||||
final collection = MockCollectionReference();
|
||||
final document = MockDocumentReference();
|
||||
final provider = FirestoreProvider(firestore);
|
||||
|
||||
when(firestore.collection('users')).thenReturn(collection);
|
||||
when(collection.document('123')).thenReturn(document);
|
||||
|
||||
provider.createUser(user);
|
||||
provider.createUser(user, '123');
|
||||
|
||||
verify(collection.add(user.toFirestoreMap()));
|
||||
verify(document.setData(user.toFirestoreMap()));
|
||||
});
|
||||
|
||||
test('should update the information of a user', () {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue