def assert_requirements(self):
<EOL>if hasattr(sys, '<STR_LIT>'):<EOL><INDENT>implementation_version = format_full_version(sys.implementation.version)<EOL><DEDENT>else:<EOL><INDENT>implementation_version = "<STR_LIT:0>"<EOL><DEDENT>if hasattr(sys, '<STR_LIT>'):<EOL><INDENT>implementation_name = sys.implementation.name<EOL><DEDENT>else:<EOL><INDENT>implementation_name = '<STR_LIT>'<EOL><DEDENT>lookup = {<EOL>'<STR_LIT>': os.name,<EOL>'<STR_LIT>': sys.platform,<EOL>'<STR_LIT>': platform.machine(),<EOL>'<STR_LIT>': platform.python_implementation(),<EOL>'<STR_LIT>': platform.release(),<EOL>'<STR_LIT>': platform.system(),<EOL>'<STR_LIT>': platform.version(),<EOL>'<STR_LIT>': platform.python_version()[:<NUM_LIT:3>],<EOL>'<STR_LIT>': platform.python_version(),<EOL>'<STR_LIT>': implementation_name,<EOL>'<STR_LIT>': implementation_version<EOL>}<EOL>for marker, specifier in self.data['<STR_LIT>']['<STR_LIT>'].items():<EOL><INDENT>if marker in lookup:<EOL><INDENT>try:<EOL><INDENT>assert lookup[marker] == specifier<EOL><DEDENT>except AssertionError:<EOL><INDENT>raise AssertionError('<STR_LIT>'.format(marker, specifier))<EOL><DEDENT><DEDENT><DEDENT>
Asserts PEP 508 specifiers.