m
Size: a a a
m
m
m
a
m
m
m
a
m
m
a
a
m
m
m
I
a
a
IA
IA
it("should work with Entity Schema", () => {
const user = {
id: "user_1",
name: "Steve",
favoritePet: { id: "pet_1", name: "kesha" },
otherPets: [
{ id: "pet_2", name: "boris" },
{ id: "pet_3", name: "balto" }
]
};
const userSchema = new Entity(usersAtom, {
favoritePet: petsAtom,
otherPets: [petsAtom]
});
normilize(store, user, userSchema);
const usersState = store.getState(usersAtom);
const petsState = store.getState(petsAtom);
expect(usersState.data).toEqual({
user_1: {
id: "user_1",
name: "Steve”,
favoritePetId: “pet_1”,
otherPetsIds: [“pet_2”, “pet_3”]
}
});
expect(usersState.ids).toEqual(["user_1"]);
expect(petsState).toEqual({
data: {
pet_1: { id: "pet_1", name: "kesha" },
pet_2: { id: "pet_2", name: "boris" },
pet_3: { id: "pet_3", name: "balto" }
},
ids: ["pet_1", "pet_2", "pet_3"]
});
});