Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RandomCharField - Prepopulates random character string. #675

Merged
merged 1 commit into from May 21, 2015
Merged

RandomCharField - Prepopulates random character string. #675

merged 1 commit into from May 21, 2015

Conversation

dpetzold
Copy link
Contributor

Hello,

I added support for a random character field. Its purpose is to create an unique id unrelated to the database id to prevent site walking and sequential attacks on something like a unsubscribe link. A sample use case would be a link shortening service like bit.ly, http://bit.ly/1AbL4UC.

Non-Breaking changes:

  • Factored out query logic to ensure uniqueness to BaseUniqueField.
  • The field value factories have been moved to generators.
  • Added mock as a test requirement.

Possibly breaking change:

  • The slug field check will only be tried 100 times. Previously there was no limit. That was done because the field value factories have been moved to a generators.

Please let me know your comments and feedback. I enjoyed working on this code very much!

@coveralls
Copy link

Coverage Status

Coverage decreased (-1.2%) to 28.25% when pulling 3d81bd7 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.69%) to 30.14% when pulling 3d81bd7 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

@coveralls
Copy link

Coverage Status

Coverage decreased (-1.2%) to 28.25% when pulling c508e66 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.69%) to 30.14% when pulling c508e66 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

@trbs
Copy link
Member

trbs commented May 18, 2015

Could you please take a look at why the tests are failing ?
(Sorry I don't have the time right now to dive into this)

@dpetzold
Copy link
Contributor Author

Its from this

ValidationError: [u'The verbose_name of random char test model lower alpha digits is longer than 39 characters']

I'll fix and try to increase coverage.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.69%) to 30.14% when pulling c1319d9 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

1 similar comment
@coveralls
Copy link

Coverage Status

Coverage increased (+0.69%) to 30.14% when pulling c1319d9 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.69%) to 30.14% when pulling 383d204 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.69%) to 30.14% when pulling 383d204 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.69%) to 30.14% when pulling 10ea4f1 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

@trbs
Copy link
Member

trbs commented May 21, 2015

Ready to merge ?

@dpetzold
Copy link
Contributor Author

Yeah this is it.

@dpetzold
Copy link
Contributor Author

Sorry I have been changing history to keep the commit clean. That is why its rebuilding.

- Factored out query logic to ensure uniqueness to BaseUniqueField.
- The field value factories have been moved to generators.
@coveralls
Copy link

Coverage Status

Coverage increased (+0.69%) to 30.14% when pulling 3da693f on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.69%) to 30.14% when pulling ad3c594 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

1 similar comment
@coveralls
Copy link

Coverage Status

Coverage increased (+0.69%) to 30.14% when pulling ad3c594 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

@coveralls
Copy link

Coverage Status

Coverage increased (+0.69%) to 30.14% when pulling 6654eb3 on dpetzold:random-char-field into bcc2ebe on django-extensions:master.

trbs added a commit that referenced this pull request May 21, 2015
RandomCharField - Prepopulates random character string.
@trbs trbs merged commit ff172ae into django-extensions:master May 21, 2015
@trbs
Copy link
Member

trbs commented May 21, 2015

Thanks !! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants