code: def test_sso_login_when_required_authentication(self, mock_post):
      mock_resp = self._mock_response(
          json_data={
              "status": "OK",
              "message": "Required login",
              "data": {
                  "auth_url": "https://sso-idp-host/authorize?state=xxuixld",
                  "state": "xxuixld",
              },
          }
      )
      mock_post.return_value = mock_resp
  
      au = ArrowUploader()
  
      au.sso_login(org_name="mock-org", idp_name="mock-idp")
  
      au.sso_state == "xxuixld"
      au.sso_auth_url == "https://sso-idp-host/authorize?state=xxuixld"
  
      with pytest.raises(Exception):
          au.token
  
imports: import graphistry, mock, pandas, pytest, unittest
  from graphistry import ArrowUploader
  from graphistry.pygraphistry import PyGraphistry
label_desc: Use image node_id 7 for calling the TestArrowUploader_Comms obj's underlying member method code with example usage: obj.test_sso_login_when_required_authentication(mock_post) without return types