2976 Commits

Author SHA1 Message Date
Elrond
11780855da Fix left over from variable renaming. 2013-04-09 22:37:10 +02:00
Elrond
8021cc5605 Merge remote-tracking branch 'brett/itsdangerous'
* brett/itsdangerous:
  Call is_updated instead of testing it boolean.
  Harden It's Dangerous key management.
  First tests for the Session class.
  Set a starting value for session.send_new_cookie.
  Remove beaker stuff from the code.
  Delete the session cookie on an empty session.
  Back sessions with It's Dangerous.
  Improve fs security for itsdangerous secret.
  Docs for get_timed_signer_url.
  Basic itsdangerous infrastructure.

Conflicts:
	mediagoblin/tests/test_cache.py
2013-04-09 19:40:54 +02:00
Christopher Allan Webber
70c061955c tests for new pluginapi methods that can't possibly pass yet :) 2013-04-09 11:21:31 -05:00
Elrond
b98882e16e Use cascade for comment deletion.
Also use the relationship for getting the comments on a
MediaEntry.
2013-04-08 17:03:26 +02:00
Elrond
25067d8110 Testing: Remove some left over files/dirs.
When using tempfile.* in testing, those files get created
in the system tempdir. The docs say, we should try to
remove them.
Yes, the next reboot will clean them up also.

And in the workbench case, check after each test, that the
global workbench dir is empty (so the sub-workbcnhes have
been destroyed).
2013-04-08 17:03:26 +02:00
Elrond
8ec87dc3fd Implement queue dir delete for proc_state.delete_queue_file
Implement queue dir deleting in the
proc_state.delete_queue_file helper function.
2013-04-08 16:12:32 +02:00
Elrond
2dd0af3635 Merge remote-tracking branch 'cwebber/254_delete_queue_directories'
* cwebber/254_delete_queue_directories:
  Removing docstring bit about delete_file possibly deleting directories in the future
  Convert media processing backends to delete the queue directory (#254)
  Implement delete_dir in the FileStorage

Conflicts:
	mediagoblin/media_types/image/processing.py
	mediagoblin/media_types/video/processing.py

Conflicts, because those media_types already use the newer
proc_state.delete_queue_file() method (which needs
updating.
2013-04-08 15:57:06 +02:00
Christopher Allan Webber
e495e28ee0 Convenience functions for callable hooks 2013-04-07 17:46:11 -05:00
Elrond
0c0f31c4ef Teach runtests.sh the -n arg.
If you give "-n 8" to runtests, it thinks, it got
"-n" -- a nice option, ignored.
"8"  -- Oh! a single test named "8" to run, so no need to
        run all the GMG tests.

Well, that's not what we want. So runtests now knows about
-n taking an arg.
2013-04-06 22:56:40 +02:00
Joar Wandborg
c121a7d3d0 OAuth: Support refresh tokens, etc
Initially I was going to write a failing test for refresh tokens. Thus
this fix includes an orphaned 'expect_failure' method in test utils.

I ended up writing support for OAuth refresh tokens, as well as a lot of
cleanup (hopefully) in the OAuth plugin code.

**Rebase**: While waiting for this stuff to be merged, the testing
framework changed, it comes with batteries included regarding fails.
Removed legacy nosetest helper.

Also added a lot of backref=backref([...], cascade='all, delete-orphan')
2013-04-06 22:17:27 +02:00
Christopher Allan Webber
7d503a897b Really removing nosetests things now! all assert_whatever removed 2013-04-06 10:08:26 -05:00
Elrond
4412385394 Better docs for GenerateSlugMixin. 2013-04-06 16:53:04 +02:00
Elrond
455fd36ff6 Use GenerateSlugMixin for collections.
Use the new way of generating slugs also for collections.
Also drop the dummy_db arg to check_collection_slug_used.
2013-04-06 16:53:04 +02:00
Elrond
29c65044bf Refactor generate_slug into a mixin.
Refactor the new generate_slug into a mixin to
allow it to be used for collections also.
2013-04-06 16:53:04 +02:00
Christopher Allan Webber
fe6755f0f4 Merge branch '614_multi_test_config' 2013-04-04 19:44:36 -05:00
Christopher Allan Webber
5c2ece7401 Switch test_app generation over to use py.test fixtures.
By doing this, we can take advantage of py.test's ability to create
temporary directories that are then cleaned up later during testing.
This helps for sandboxing things.

This also involves a ton of changes:
 - Changing the get_app stuff appropriately, getting rid of the
   setup_fresh_app decorator
 - Making said fixture
 - Switching over a billion tests to use it
2013-04-04 19:23:04 -05:00
Christopher Allan Webber
e11c62a0ef Oops, forgot to assign dump_old_app to self, heh. 2013-04-04 11:13:47 -05:00
Christopher Allan Webber
245d4f119f Turning setup_fresh_app into SetupFreshApp, a decorator with options!
This way people can pass in particular paste/mediagoblin configs that they want to use.
2013-04-04 11:08:50 -05:00
Christopher Allan Webber
6588acc183 Updating get_app to allow for passing in particular app configs 2013-04-04 10:37:32 -05:00
Christopher Allan Webber
39a71c09d7 Also require pytest-xdist! 2013-04-03 16:31:42 -05:00
Christopher Allan Webber
c8196f2805 Use py.test --boxed for unit tests from now on! 2013-04-03 15:21:40 -05:00
Christopher Allan Webber
cb14544082 These tests need to have a MediaGoblin app setup so they can connect to the db!
Thanks to py.test --boxed for helping discover that ;)
2013-04-03 14:32:35 -05:00
Christopher Allan Webber
958080be16 All mediagoblin tests now pass with py.test (switched setUp to setup) 2013-04-03 14:05:42 -05:00
Elrond
d9f61cf7d7 Create ProcessingState.store_public.
The ideas is by Alon Levy.

Use it in ProcessingState.copy_original for now.
2013-04-03 18:52:17 +02:00
Elrond
af0b508c75 Little refactoring for images: media_files.
Set the media_files directly at the relvant places.
2013-04-03 18:49:46 +02:00
Elrond
b1126f7127 A bit of pep8: Remove useless whitespace. 2013-03-30 14:55:10 +01:00
Elrond
4924b93bac Merge remote-tracking branch 'JDShu/649_use_form_data_field'
* JDShu/649_use_form_data_field:
  Use WTForms data field in user_pages/views.py
  Use WTForms data field in auth/views.py
  auth: whitespace cleanup in views.py
  Use WTForms data field in plugins/oauth/views.py
  Use WTForms data field in submit/views.py
  Use WTForms data field in edit/views.py
2013-03-30 14:42:45 +01:00
Christopher Allan Webber
047d8d5871 Merge branch 'master' of gitorious.org:mediagoblin/mediagoblin 2013-03-29 08:09:36 -05:00
Christopher Allan Webber
6c6e9911f5 Warning that raven plugin is somewhat experimental! 2013-03-29 08:09:26 -05:00
Elrond
2ef2f46e73 Refactor file field checking.
When uploading, the file field needs some checks, it seems.
So refactor them into check_file_field and use around.
2013-03-29 12:01:23 +01:00
Hans Lo
c5d341d79d Use WTForms data field in user_pages/views.py
Missed case in a previous commit.
2013-03-28 04:26:48 -04:00
Hans Lo
9d140cb842 Use WTForms data field in auth/views.py 2013-03-28 04:26:33 -04:00
Hans Lo
dfa6994d4d auth: whitespace cleanup in views.py 2013-03-28 01:32:44 -04:00
Hans Lo
29f523e1db Use WTForms data field in plugins/oauth/views.py 2013-03-28 00:08:18 -04:00
Hans Lo
c5673a1300 Use WTForms data field in submit/views.py 2013-03-27 23:56:33 -04:00
Hans Lo
dc03850b7a Use WTForms data field in edit/views.py 2013-03-27 23:56:20 -04:00
Elrond
9924cd0fb6 piwigo: Fix pwg_getversion
This one needs to return just "2.5.0 (Mediagoblin)" instead
of "Piwigo 2...".
2013-03-26 19:23:22 +01:00
Elrond
79f87b975e piwigo: Start at pwg.images.addSimple.
Without a session and a logged in user, this can't go much
further.

Misses check for the file upload field.
Need refactored test tool for this.
2013-03-26 19:19:32 +01:00
Brett Smith
3843697c28 Call is_updated instead of testing it boolean. 2013-03-25 09:20:46 -04:00
Christopher Allan Webber
126c3503a0 Merge remote-tracking branch 'aeva/671_fix_stl' 2013-03-25 08:01:11 -05:00
Aeva Ntsc
50d123b4be Ascii stl files now should have their whitespace stripped when parsing. 2013-03-25 07:55:24 -05:00
Aeva Ntsc
eacb9c4886 Fixed a bug that had binary stls be handled by the ascii stl parser. 2013-03-24 16:12:55 -05:00
Brett Smith
09102e0767 Harden It's Dangerous key management.
The previous code was theoretically subject to timing attacks, where
an attacker could read the key in between the time it was saved to the
file and when the chmod happened.  This version prevents that by using
umasks to ensure the files always have the right permissions.

This version also avoids using a key that cannot be saved due to some
system setup bug.
2013-03-24 16:27:20 -04:00
Brett Smith
e84e1cdf12 First tests for the Session class. 2013-03-24 15:46:10 -04:00
Brett Smith
5d1a8815d1 Set a starting value for session.send_new_cookie.
This makes session.__init__ slightly more complicated but probably
simplifies everything else, especially if we make the class smarter
later by having it track changes itself.
2013-03-24 15:39:49 -04:00
Brett Smith
9e1fa2396f Remove beaker stuff from the code.
This is all obsoleted by It's Dangerous.
2013-03-24 15:10:08 -04:00
Brett Smith
627a721cf6 Delete the session cookie on an empty session. 2013-03-24 14:47:02 -04:00
Brett Smith
c7424612d7 Back sessions with It's Dangerous.
This is a contribution to #668.
2013-03-24 14:44:41 -04:00
Christopher Allan Webber
956a87322e Merge remote-tracking branch 'jdshu/649_use_form_data_field' 2013-03-24 13:25:01 -05:00
Christopher Allan Webber
db9ab08a11 Webtest2 breaks response.cookies stuff for some reason.
I don't understand why but other people do!

This is a terrible commit message and I am sorry for it.
2013-03-24 13:22:31 -05:00