def test_user_agent(self): from dwave.cloud.package_info import __packagename__, __version__ ua = user_agent(__packagename__, __version__) required = [__packagename__, 'python', 'machine', 'system', 'platform'] for key in required: self.assertIn(key, ua)
def __get__(self, obj, objtype=None): # Note: The only tags that might change are platform tags, as returned # by `dwave.common.platform.tags` entry points, and `platform.platform()` # (like linux kernel version). Assuming OS/machine won't change during # client's lifespan, and typical platform tags defined via entry points # depend on process environment variables (which rarely change), it's # pretty safe to cache the user-agent per-class (or even globally). if self._user_agent is None: self._user_agent = user_agent(__packagename__, __version__) return self._user_agent
def show_platform(ctx, param, value): if value and not ctx.resilient_parsing: click.echo(user_agent()) sys.exit()