code: def test_userstash_get_by_email(
      root_domain_client,
      faker: Faker,
      user_stash: UserStash,
      guest_user: User,
  ) -> None:
      # prepare: add mock data
      user = add_mock_user(root_domain_client, user_stash, guest_user)
  
      result = user_stash.get_by_email(
          root_domain_client.credentials.verify_key, email=user.email
      )
      assert result.is_ok()
      searched_user = result.ok()
      assert user == searched_user
  
      random_email = faker.email()
      result = user_stash.get_by_email(
          root_domain_client.credentials.verify_key, email=random_email
      )
      searched_user = result.ok()
      assert result.is_ok()
      assert searched_user is None
  
file_path: PySyft/packages/syft/tests/syft/users/user_stash_test.py
imports: from faker import Faker
  from syft.node.credentials import SyftSigningKey
  from syft.service.response import SyftSuccess
  from syft.service.user.user import User
  from syft.service.user.user import UserUpdate
  from syft.service.user.user_roles import ServiceRole
  from syft.service.user.user_stash import UserStash
  from syft.types.uid import UID
label_desc: Use image node_id 5 for calling a global function with example usage: test_userstash_get_by_email(root_domain_client, faker, user_stash, guest_user) without return types