Test multi instance and multi user session

This notebook is complemented by the faq/setup.ipynb notebook in lamindb.

!lamin login testuser1
!lamin init --storage "./testsetup-prepare"
import lamindb_setup as ln_setup
import pytest
ln_setup.core.django.reset_django()  # django is not configured, so no effect
assert ln_setup.settings.user.handle == "testuser1"
ln_setup.init(storage="./testsetup")
assert ln_setup.settings.instance.slug == "testuser1/testsetup"
from lamindb.models import User
User.objects.get(handle="testuser1")
with pytest.raises(Exception):  # does not exist
    User.objects.get(handle="testuser2")

Let us login with another user:

ln_setup.login("testuser2")
User.objects.get(handle="testuser2")

Connect to another instance in the same process:

ln_setup.connect("testuser1/testsetup-prepare")
assert ln_setup.settings.instance.slug == "testuser1/testsetup-prepare"
!lamin login testuser1
!lamin delete --force testsetup-prepare
!lamin delete --force testsetup