def test_builtin_license(self): addon = addon_factory() self.version = addon.current_version license = self.version.license license.update(builtin=18) assert license._constant == LICENSES_BY_BUILTIN[18] result = LicenseSerializer( context={'request': self.request}).to_representation(license) assert result['id'] == license.pk # A request with no ?lang gets you the site default l10n in a dict to # match how non-constant values are returned. assert result['name'] == { 'en-US': unicode(LICENSES_BY_BUILTIN[18].name)} accept_request = APIRequestFactory().get('/') accept_request.LANG = 'de' result = LicenseSerializer( context={'request': accept_request}).to_representation(license) # An Accept-Language should result in a different default though. assert result['name'] == { 'de': unicode(LICENSES_BY_BUILTIN[18].name)} # But a requested lang returns a flat string lang_request = APIRequestFactory().get('/?lang=fr') result = LicenseSerializer( context={'request': lang_request}).to_representation(license) assert result['name'] == unicode(LICENSES_BY_BUILTIN[18].name)