Commit Graph

250 Commits

Author SHA1 Message Date
Bharat Mediratta
feefdfd533 Stop using MY_ORM::original(). 2010-01-20 22:51:18 -08:00
Bharat Mediratta
995faaa27f Stop using MY_ORM::original(). It's got very odd semantics and we are
not capturing all cases for setting and resetting $original, which
leads to some weird and hard to reproduce behavior.

Instead, if we need the original just reload it from the database.
This may result in a somewhat excessive load in places, but we'll have
to fix that in a later optimization pass.
2010-01-20 22:45:19 -08:00
Bharat Mediratta
76da85a1a0 Extend Gallery_Unit_Test_Case instead of Unit_Test_Case. 2010-01-19 22:38:19 -08:00
Bharat Mediratta
e39c8df19f Fix some validation checks to check to see if the original was loaded
before deciding whether or not we changed a value.

Change valid_name to be cascading, not parallel.
2010-01-19 21:20:36 -08:00
Bharat Mediratta
e02675b730 Change "filename" to "name" in the edit album form. I'd rather have
consistency between field names than deal with underlying issues with
Forge bitching about the "name" property.
2010-01-19 19:31:01 -08:00
Bharat Mediratta
512910962d Change "dirname" to "name" in the edit album form. I'd rather have
consistency between field names than deal with underlying issues with
Forge bitching about the "name" property.
2010-01-19 19:24:46 -08:00
Bharat Mediratta
c590fed132 Change rest::url() to take a module name and a resource. The module
does the rest.  This function is symmetrical to rest::resolve.
2010-01-19 01:33:57 -08:00
Bharat Mediratta
f95442c314 Rewrite the tests entirely to cover the new REST code. 2010-01-19 01:17:29 -08:00
Bharat Mediratta
c059a444c7 Updated for model based validation. Fixed
change_photo_no_csrf_fails_test() which has been broken since we
deleted Rest_Controller.
2010-01-18 23:49:00 -08:00
Bharat Mediratta
4418993db9 Add slug_is_url_safe_test() 2010-01-18 23:38:39 -08:00
Bharat Mediratta
2687762aec Update for model validation. Move the url safe tests into Item_Model_Test. 2010-01-18 23:38:18 -08:00
Bharat Mediratta
e06ceebaa6 No longer necessary; all photo and movie helper code is now in the model. 2010-01-18 23:25:09 -08:00
Bharat Mediratta
f021505208 No longer necessary; all relevant album helper code is now in the model. 2010-01-18 23:24:06 -08:00
Bharat Mediratta
c6bd3c5b26 Updated for model based validation.
change_album_no_csrf_fails_test() had been broken since we got rid of
REST_Controller, but was poorly written so we didn't realize it.  Boo.
2010-01-18 23:23:31 -08:00
Bharat Mediratta
cc61e7a3e0 Update for model based validation. Use test helper. Reduce the code size greatly! 2010-01-18 23:11:02 -08:00
Bharat Mediratta
9eedf5c207 switch to test::starts_with(). 2010-01-18 22:55:16 -08:00
Bharat Mediratta
cfc0f3d0c0 Minor test cleanup. 2010-01-18 22:51:40 -08:00
Bharat Mediratta
b4e6834a28 Added move_album_fails_wrong_target_type_test() 2010-01-18 21:14:43 -08:00
Bharat Mediratta
677fb08002 Updated tests to match what the expected new API for moving items.
Now to move an item, you just change its parent_id.
2010-01-18 21:12:26 -08:00
Bharat Mediratta
38c13760af Switch to using test::random_name() to avoid integer names.
Fix up rename_photo_test.
2010-01-18 20:14:09 -08:00
Bharat Mediratta
b93000c0ce Kohana ticket #2504 is resolved, so this test is no longer necessary. 2010-01-18 17:20:12 -08:00
Bharat Mediratta
92ed5d45e6 In item_rename_fails_with_existing_name_test switch validate() to
save() now that Kohana ticket #2504 is resolved.
2010-01-18 12:56:49 -08:00
Bharat Mediratta
ebb909625c Merge branch 'master' into bharat_dev 2010-01-18 12:54:26 -08:00
Bharat Mediratta
06cabecd76 Coerce some integers to strings now that ORM isn't typecasting anymore. 2010-01-18 12:49:58 -08:00
Bharat Mediratta
a9f07986f6 The root parent id is 0, not null (this deviation exposed by the new lack of typecasting in ORM). 2010-01-18 12:39:42 -08:00
Bharat Mediratta
cf236a228a Don't assert_same() now that typecasting is gone from ORM. 2010-01-18 12:37:20 -08:00
Bharat Mediratta
cac4692510 Don't use rand() as the name. Now that ORM::load_types() is gone, it
won't get coerced to a string, and then we wind up comparing:

  12345 != 12345-12321

In the old approach, they'd both be strings so they'd be inequal.  But
in the new approach the first value is an integer (sinced it came from
rand()) so the second value is typecast to an integer which drops
everything after the - sign so they appear equal.
2010-01-18 12:35:26 -08:00
Bharat Mediratta
51427d5404 Verified 2010-01-18 12:21:57 -08:00
Bharat Mediratta
4eafe97b48 Reload $item after removing view permissions. 2010-01-18 11:57:23 -08:00
Bharat Mediratta
0dc184e99f Overload url::current() and url::merge() to make the current url XSS
safe.  Add tests to make sure that it doesn't relapse with future
Kohana changes.  Fixes ticket #983.

Ref: http://gallery.menalto.com/node/93738
2010-01-18 11:10:37 -08:00
Bharat Mediratta
dc286cc2bd Add a test to verify that bug #2504 is still around. When this test
starts failing, the bug is fixed and we can go fix our code that works
around it.
2010-01-18 09:00:14 -08:00
Bharat Mediratta
53735f6b16 Convert a $root to item::root() to fix a test. 2010-01-17 23:50:42 -08:00
Bharat Mediratta
31ecb009ba Get rid of urls_are_rawurlencoded_test -- it's no longer necessary
since we can't have unsafe slugs.

Add basic_validation_test.
2010-01-17 23:47:16 -08:00
Bharat Mediratta
06541f0e2a Fix item_rename_fails_with_existing_name_test() -- broken because of
http://dev.kohanaphp.com/issues/2504
2010-01-17 21:49:48 -08:00
Bharat Mediratta
710e472edc Fix rename_album_test() 2010-01-17 21:03:15 -08:00
Bharat Mediratta
b35a3c8b81 Fix rename_photo_test(). 2010-01-17 20:54:08 -08:00
Bharat Mediratta
9ddb961a91 Partially updated for model based validation. 2010-01-17 20:53:32 -08:00
Bharat Mediratta
6e73b08595 Mostly conver to model based validation. Not all tests pass yet. 2010-01-17 20:37:57 -08:00
Bharat Mediratta
434d351b2f Merge branch 'master' of git@github.com:gallery/gallery3 into bharat_dev
Conflicts:
	modules/gallery/models/item.php
2010-01-16 00:15:23 -08:00
Bharat Mediratta
00c73a4b07 Revert "Fix for ticket #978. Don't reset the original property as part of the save processing, because that will overwrite the original values with all the new values. The problem with the original approach is that when changed event handlers used ->original(), it had already been reset as part of the save processing. Went back and forth on either leaving this alone and forcing callers to save the original prior to calling the save function, but there were a few event handlers that used ->original(). This seemed the easier change. So to reset the original you need to call reload() or clear(). There is now an optional parameter on the reload to only reload the original."
This reverts commit daeaca110d.
2010-01-15 23:53:43 -08:00
Bharat Mediratta
916da15cbb Merge branch 'master' of git@github.com:gallery/gallery3 into bharat_dev 2010-01-15 13:36:16 -08:00
Tim Almdal
daeaca110d Fix for ticket #978. Don't reset the original property as part of the save processing, because that will overwrite the original values with all the new values. The problem with the original approach is that when changed event handlers used ->original(), it had already been reset as part of the save processing. Went back and forth on either leaving this alone and forcing callers to save the original prior to calling the save function, but there were a few event handlers that used ->original(). This seemed the easier change. So to reset the original you need to call reload() or clear(). There is now an optional parameter on the reload to only reload the original. 2010-01-13 11:27:09 -08:00
Bharat Mediratta
8fa9ba636b Merge branch 'master' of git@github.com:gallery/gallery3 into bharat_dev 2010-01-10 10:19:46 -08:00
Tim Almdal
a11bf29507 Fix for ticket #972 and more. In Kohana 2.4, ORM::delete_all ignores any where
clauses and deletes all the entries in the table unless an array of id's are
passed as the parameter.  This fix used the Database_builder to specify any where
conditions. Thanks psvo for find the first one. :-)
2010-01-09 23:57:16 -08:00
Bharat Mediratta
c711bf1b1f Merge branch 'master' of git@github.com:gallery/gallery3 into bharat_dev 2010-01-07 10:41:19 -08:00
Tim Almdal
188f418a54 Correct the controller_auth_data golden file to reflect that the csrf is not longer considered dirty in the logout controller. 2010-01-06 11:42:44 -08:00
Bharat Mediratta
0e3327bca7 Simplify the REST API code. Here's what I did:
1) Simplify gallery_rest to return flat models, no children and do no
   validation for now.
2) Flatten the REST replies and use HTTP codes to indicate
   success/failure instead of additional status messages.
3) Use the message and error code support in the base Exception class,
   instead of brewing our own in Rest_Exception.
4) Get rid of rest::success() and rest::fail() -- we only need
   rest::reply() since all failures are covered by throwing an
   exception.
5) Get rid of /rest/access_key and just use /rest for authentication.
6) Inline and simplify rest::normalize_request since we only use it once
7) Change rest::set_active_user to succeed or throw an exception
8) Extract Rest_Exception::sendHeaders into rest::send_headers()

Here's what's currently broken:
1) Data validation.  There currently is none
2) Logging.  That's gone too
3) image block and tag code is broken
4) Tests are broken
5) No movie support
2010-01-03 20:30:35 -08:00
Tim Almdal
64e5efd57b Add rest_controller::__call to the authorized controller methods 2010-01-02 17:09:40 -08:00
Tim Almdal
07f8e256cf Clean up gallery_rest helper test 2010-01-02 16:22:03 -08:00
Bharat Mediratta
11f6a3d1eb Merge branch 'master' of git@github.com:gallery/gallery3 2010-01-02 15:49:17 -08:00