mirror of
https://github.com/inaturalist/iNaturalistReactNative.git
synced 2026-04-19 06:23:12 -04:00
* Add a safeRealmWrite transaction for better logging around writes; code cleanup and realm update * Add safeRealmWrite to tests and make sure action is called synchronously * Fix final test * Only write to realm when useObservationsUpdates data changes; code cleanup * Code cleanup
25 lines
796 B
JavaScript
25 lines
796 B
JavaScript
import { renderHook } from "@testing-library/react-native";
|
|
import safeRealmWrite from "sharedHelpers/safeRealmWrite";
|
|
import { useCurrentUser } from "sharedHooks";
|
|
import factory from "tests/factory";
|
|
|
|
const mockUser = factory( "LocalUser", {
|
|
login: "fake_login",
|
|
signedIn: true
|
|
} );
|
|
|
|
describe( "useCurrentUser", () => {
|
|
beforeEach( async ( ) => {
|
|
// Write mock user to realm
|
|
safeRealmWrite( global.realm, ( ) => {
|
|
global.realm.create( "User", mockUser );
|
|
}, "create current user, useCurrentUser test" );
|
|
} );
|
|
|
|
it( "should return current user", () => {
|
|
const { result } = renderHook( () => useCurrentUser() );
|
|
const user = global.realm.objects( "User" ).filtered( "signedIn == true" )[0];
|
|
expect( user.login ).toEqual( result.current.login );
|
|
} );
|
|
} );
|