]> asedeno.scripts.mit.edu Git - bluechips.git/log
bluechips.git
16 years agoAdd and use an __init__ method for Split objects
Evan Broder [Fri, 25 Jul 2008 02:07:30 +0000 (02:07 +0000)]
Add and use an __init__ method for Split objects

16 years agoAdd and use an __init__ method for User objects
Evan Broder [Fri, 25 Jul 2008 02:07:23 +0000 (02:07 +0000)]
Add and use an __init__ method for User objects

16 years agoFix a few of the more sane pylint warnings
Evan Broder [Sun, 20 Jul 2008 14:53:35 +0000 (14:53 +0000)]
Fix a few of the more sane pylint warnings

16 years agoMake the distribution test actually do something
Evan Broder [Sun, 20 Jul 2008 14:53:17 +0000 (14:53 +0000)]
Make the distribution test actually do something

16 years agoAdd another test for testing uneven splits
Evan Broder [Sun, 20 Jul 2008 14:53:07 +0000 (14:53 +0000)]
Add another test for testing uneven splits

16 years agoUse self.assert* functions in tests instead of normal assertion
Evan Broder [Sun, 20 Jul 2008 14:52:54 +0000 (14:52 +0000)]
Use self.assert* functions in tests instead of normal assertion

16 years agoTest Currency.__str_no_dollar__
Evan Broder [Sat, 19 Jul 2008 18:45:59 +0000 (18:45 +0000)]
Test Currency.__str_no_dollar__

16 years agoChanging location of minus sign in Currency broke __str_no_dollar__
Evan Broder [Sat, 19 Jul 2008 18:45:50 +0000 (18:45 +0000)]
Changing location of minus sign in Currency broke __str_no_dollar__

16 years agoAdd tests for Currency string conversion
Evan Broder [Sat, 19 Jul 2008 17:53:09 +0000 (17:53 +0000)]
Add tests for Currency string conversion

16 years agoMove negative sign for Currency
Evan Broder [Sat, 19 Jul 2008 17:53:00 +0000 (17:53 +0000)]
Move negative sign for Currency

16 years agoSuperSubclass isn't smart enough to do the __new__ correctly
Evan Broder [Sat, 19 Jul 2008 17:52:52 +0000 (17:52 +0000)]
SuperSubclass isn't smart enough to do the __new__ correctly

16 years agoPull more things into their own tests for Currency
Evan Broder [Sat, 19 Jul 2008 17:52:42 +0000 (17:52 +0000)]
Pull more things into their own tests for Currency

16 years agoUse the right model module in package-level test setUp
Evan Broder [Sat, 19 Jul 2008 17:52:33 +0000 (17:52 +0000)]
Use the right model module in package-level test setUp

Apparently other imports can override the one in test/__init__.py

16 years agoMore tests for the Currency type
Evan Broder [Sat, 19 Jul 2008 17:52:26 +0000 (17:52 +0000)]
More tests for the Currency type

16 years agoAdd an __init__.py for tests/model/
Evan Broder [Sat, 19 Jul 2008 17:52:17 +0000 (17:52 +0000)]
Add an __init__.py for tests/model/

16 years agoStart writing tests for Currency objects
Evan Broder [Sat, 19 Jul 2008 10:05:58 +0000 (10:05 +0000)]
Start writing tests for Currency objects

16 years agoSplit tests aren't testing a controller, so don't use TestController
Evan Broder [Sat, 19 Jul 2008 10:05:50 +0000 (10:05 +0000)]
Split tests aren't testing a controller, so don't use TestController

16 years agoMake Currency objects (and others using the SuperSubclass) immutable
Evan Broder [Sat, 19 Jul 2008 10:05:40 +0000 (10:05 +0000)]
Make Currency objects (and others using the SuperSubclass) immutable

16 years agoTest some predefined expenditures
Evan Broder [Sat, 19 Jul 2008 10:05:31 +0000 (10:05 +0000)]
Test some predefined expenditures

16 years agoSupport specifying how many users/expenditures to create
Evan Broder [Sat, 19 Jul 2008 10:05:21 +0000 (10:05 +0000)]
Support specifying how many users/expenditures to create

16 years agoMove genereically useful functions out of specific modules
Evan Broder [Sat, 19 Jul 2008 05:05:11 +0000 (05:05 +0000)]
Move genereically useful functions out of specific modules

16 years agoRestructure to accurately reflect parent-child relations
Evan Broder [Sat, 19 Jul 2008 05:05:01 +0000 (05:05 +0000)]
Restructure to accurately reflect parent-child relations

Also cascade deletes

16 years agoAttempt to test that splits are distributed evenly
Evan Broder [Sat, 19 Jul 2008 05:04:52 +0000 (05:04 +0000)]
Attempt to test that splits are distributed evenly

16 years agoRename setup and teardown functions in test suite
Evan Broder [Fri, 18 Jul 2008 17:15:43 +0000 (17:15 +0000)]
Rename setup and teardown functions in test suite

setUp seems to be more correct than setup

16 years agoDon't multiple the pennies that need to be distributed by 100
Evan Broder [Fri, 18 Jul 2008 17:15:36 +0000 (17:15 +0000)]
Don't multiple the pennies that need to be distributed by 100

16 years agoStart writing tests for splits
Evan Broder [Fri, 18 Jul 2008 17:15:28 +0000 (17:15 +0000)]
Start writing tests for splits

 * bluechips.tests.split.test_random:TestSplitRandom.test_splitTotal
   currently fails, which means the system currently leaks money

16 years agoKeep the entered_time fields as UTC stamps instead of local
Evan Broder [Fri, 18 Jul 2008 17:15:19 +0000 (17:15 +0000)]
Keep the entered_time fields as UTC stamps instead of local

16 years agoAdd some documentation to the Currency type
Evan Broder [Fri, 18 Jul 2008 17:15:00 +0000 (17:15 +0000)]
Add some documentation to the Currency type

16 years agoSwitch from using Decimal to using a new Currency class
Evan Broder [Fri, 18 Jul 2008 07:51:47 +0000 (07:51 +0000)]
Switch from using Decimal to using a new Currency class

 * Include the SmartSubclass metaclass for making an object that is
   itself but acts like something else
 * Derive a Currency class from that
 * Use it EVERYWHERE!

16 years agoDon't import meta.Session directly; import meta instead
Evan Broder [Fri, 18 Jul 2008 04:03:52 +0000 (04:03 +0000)]
Don't import meta.Session directly; import meta instead

16 years agoMove functions for splitting expenditures into Expenditure model
Evan Broder [Fri, 18 Jul 2008 02:59:03 +0000 (02:59 +0000)]
Move functions for splitting expenditures into Expenditure model

16 years agoMove model classes into their own files
Evan Broder [Fri, 18 Jul 2008 02:58:54 +0000 (02:58 +0000)]
Move model classes into their own files

16 years agoMake the built-in tests actually pass
Evan Broder [Fri, 18 Jul 2008 02:58:45 +0000 (02:58 +0000)]
Make the built-in tests actually pass

16 years ago"True" is not a valid where clause for sqlite
Evan Broder [Fri, 18 Jul 2008 02:58:36 +0000 (02:58 +0000)]
"True" is not a valid where clause for sqlite

16 years agoTests against an in-memory database don't work; make a real one
Evan Broder [Fri, 18 Jul 2008 02:58:28 +0000 (02:58 +0000)]
Tests against an in-memory database don't work; make a real one

16 years agoUse the fake authentication in the testing config
Evan Broder [Thu, 17 Jul 2008 18:31:49 +0000 (18:31 +0000)]
Use the fake authentication in the testing config

16 years agoBuild in fakeauth into the fake authkit.authenticate module
Evan Broder [Thu, 17 Jul 2008 18:31:34 +0000 (18:31 +0000)]
Build in fakeauth into the fake authkit.authenticate module

16 years agoWe're not i18ning anything else right now; drop the one place we are
Evan Broder [Thu, 17 Jul 2008 17:47:49 +0000 (17:47 +0000)]
We're not i18ning anything else right now; drop the one place we are

16 years agoUse the fake auth middleware if testing (in test.ini)
Evan Broder [Thu, 17 Jul 2008 17:47:39 +0000 (17:47 +0000)]
Use the fake auth middleware if testing (in test.ini)

16 years agoCreate a fake auth midleware component for testing
Evan Broder [Thu, 17 Jul 2008 17:47:29 +0000 (17:47 +0000)]
Create a fake auth midleware component for testing

16 years agoOnly display 10 most recent of each type of transaction on home page
Evan Broder [Thu, 17 Jul 2008 17:47:19 +0000 (17:47 +0000)]
Only display 10 most recent of each type of transaction on home page

16 years agoAdd navigation bar
Evan Broder [Thu, 17 Jul 2008 17:47:07 +0000 (17:47 +0000)]
Add navigation bar

16 years agoDisplay user's transactions on home page
Evan Broder [Thu, 17 Jul 2008 17:46:59 +0000 (17:46 +0000)]
Display user's transactions on home page

16 years agoAdd history controller to display old transactions
Evan Broder [Thu, 17 Jul 2008 17:46:46 +0000 (17:46 +0000)]
Add history controller to display old transactions

16 years agoReconfigure some models for convenience
Evan Broder [Thu, 17 Jul 2008 17:46:32 +0000 (17:46 +0000)]
Reconfigure some models for convenience

 * Add a default sort on expenditures and transfers, since that's
   almost always what's wanted
 * Eagerly load users related to expenditures and transfers, since
   it's cheap and generally wanted

16 years agoDisplay all totals with currency formatting
Evan Broder [Wed, 16 Jul 2008 08:18:04 +0000 (08:18 +0000)]
Display all totals with currency formatting

16 years agoDisplay some aggregate numbers on spending
Evan Broder [Wed, 16 Jul 2008 08:16:38 +0000 (08:16 +0000)]
Display some aggregate numbers on spending

16 years agoTransfers weren't being totaled correctly
Evan Broder [Wed, 16 Jul 2008 07:51:26 +0000 (07:51 +0000)]
Transfers weren't being totaled correctly

16 years agoUse the correct object for datetime.now
Evan Broder [Wed, 16 Jul 2008 07:36:07 +0000 (07:36 +0000)]
Use the correct object for datetime.now

This is why my commit bit should automatically be revoked if I'm in a
hurry

16 years agoChange from using sa.func.now to datetime.now
Evan Broder [Wed, 16 Jul 2008 07:34:53 +0000 (07:34 +0000)]
Change from using sa.func.now to datetime.now

16 years agoChange lib/totals.py:debt to use new convention for add_column
Evan Broder [Wed, 16 Jul 2008 07:09:24 +0000 (07:09 +0000)]
Change lib/totals.py:debt to use new convention for add_column

16 years agoAnd output the outstanding debts on the home page
Evan Broder [Wed, 16 Jul 2008 07:04:56 +0000 (07:04 +0000)]
And output the outstanding debts on the home page

16 years agoOnly export the debt and settle functions in lib/totals.py
Evan Broder [Wed, 16 Jul 2008 07:04:46 +0000 (07:04 +0000)]
Only export the debt and settle functions in lib/totals.py

16 years agoExpect the debts as an argument in settle (for efficiency)
Evan Broder [Wed, 16 Jul 2008 07:04:39 +0000 (07:04 +0000)]
Expect the debts as an argument in settle (for efficiency)

16 years agoAdd bluechips.lib.totals:settle - outputs transfers needed to settle
Evan Broder [Wed, 16 Jul 2008 07:04:32 +0000 (07:04 +0000)]
Add bluechips.lib.totals:settle - outputs transfers needed to settle

Shamelessly stolen from the account.pl that Nelson Elhage wrote for our 2008
summer apartment, settle returns the minimal list of transfers amongst residents
needed to settle the books.

16 years agoStart working towards calculating the system state - get total debts
Evan Broder [Wed, 16 Jul 2008 07:04:25 +0000 (07:04 +0000)]
Start working towards calculating the system state - get total debts

16 years agoActually set a meaningful value for model/__init__.py:__all__
Evan Broder [Wed, 16 Jul 2008 07:04:18 +0000 (07:04 +0000)]
Actually set a meaningful value for model/__init__.py:__all__

16 years agoImport NotAuthenticatedError for permissions checks
Evan Broder [Wed, 16 Jul 2008 05:30:06 +0000 (05:30 +0000)]
Import NotAuthenticatedError for permissions checks

16 years agoReplace index page with index action of status controller
Evan Broder [Wed, 16 Jul 2008 05:23:02 +0000 (05:23 +0000)]
Replace index page with index action of status controller

16 years agoChange spend controller to use flash messages
Evan Broder [Wed, 16 Jul 2008 05:06:15 +0000 (05:06 +0000)]
Change spend controller to use flash messages

16 years agoRemember to commit when entering new transfers
Evan Broder [Wed, 16 Jul 2008 05:06:05 +0000 (05:06 +0000)]
Remember to commit when entering new transfers

16 years agoWhen entering a split, only delete old splits from the same expense
Evan Broder [Wed, 16 Jul 2008 05:05:53 +0000 (05:05 +0000)]
When entering a split, only delete old splits from the same expense

16 years agoAdd code to commit new transfers, set a flash message, and redirect
Evan Broder [Wed, 16 Jul 2008 05:05:45 +0000 (05:05 +0000)]
Add code to commit new transfers, set a flash message, and redirect

16 years agoAdd support for Rails-like flash messages
Evan Broder [Wed, 16 Jul 2008 05:05:38 +0000 (05:05 +0000)]
Add support for Rails-like flash messages

16 years agoAdd the bare-bones CSS file from BlueRhapsody
Evan Broder [Wed, 16 Jul 2008 04:35:47 +0000 (04:35 +0000)]
Add the bare-bones CSS file from BlueRhapsody

16 years agoAdd controller for making transfers
Evan Broder [Wed, 16 Jul 2008 04:28:52 +0000 (04:28 +0000)]
Add controller for making transfers

16 years agoAdd a FieldsDontMatch validator
Evan Broder [Wed, 16 Jul 2008 04:28:39 +0000 (04:28 +0000)]
Add a FieldsDontMatch validator

16 years agoConvert REMOTE_USER to Unicode so SQLAlchemy stops complaining
Evan Broder [Tue, 15 Jul 2008 16:16:19 +0000 (16:16 +0000)]
Convert REMOTE_USER to Unicode so SQLAlchemy stops complaining

16 years agoFor new expenditures, set the spender to the current user by default
Evan Broder [Tue, 15 Jul 2008 16:08:58 +0000 (16:08 +0000)]
For new expenditures, set the spender to the current user by default

16 years agoChange how widgets are included
Evan Broder [Tue, 15 Jul 2008 16:08:49 +0000 (16:08 +0000)]
Change how widgets are included

The <%namespace> tag changes the semantics of function cals

16 years agoCorrect conversion of UserSelect field
Evan Broder [Tue, 15 Jul 2008 16:08:42 +0000 (16:08 +0000)]
Correct conversion of UserSelect field

Before if it failed, the value would get set to None instead of something
useful.

16 years agoSmall indentation fix to model/__init__
Evan Broder [Tue, 15 Jul 2008 16:08:34 +0000 (16:08 +0000)]
Small indentation fix to model/__init__

16 years agoAdd current user to the WSGI environment
Evan Broder [Tue, 15 Jul 2008 16:08:28 +0000 (16:08 +0000)]
Add current user to the WSGI environment

16 years agoFix typo in last commit
Evan Broder [Tue, 15 Jul 2008 05:14:04 +0000 (05:14 +0000)]
Fix typo in last commit

16 years agoAdd authkit dependency
Evan Broder [Tue, 15 Jul 2008 05:13:26 +0000 (05:13 +0000)]
Add authkit dependency

16 years agoAdd middleware to test for users that are in the database
Evan Broder [Tue, 15 Jul 2008 05:09:46 +0000 (05:09 +0000)]
Add middleware to test for users that are in the database

16 years agoThe development config doesn't need to be version controlled.
Evan Broder [Tue, 15 Jul 2008 04:15:59 +0000 (04:15 +0000)]
The development config doesn't need to be version controlled.

Yeah, sure, I know it's in the history.

16 years agoAdd shebang to setup.py so it can be executed directly
Evan Broder [Tue, 15 Jul 2008 00:15:16 +0000 (00:15 +0000)]
Add shebang to setup.py so it can be executed directly

16 years agoRequire a description field on expenditures
Evan Broder [Tue, 15 Jul 2008 00:10:04 +0000 (00:10 +0000)]
Require a description field on expenditures

16 years agoAdd a results page for after an expenditure is submitted
Evan Broder [Mon, 14 Jul 2008 15:23:14 +0000 (15:23 +0000)]
Add a results page for after an expenditure is submitted

16 years agoIn case an expenditure is being re-split, delete old split data
Evan Broder [Mon, 14 Jul 2008 06:14:28 +0000 (06:14 +0000)]
In case an expenditure is being re-split, delete old split data

16 years agoFix model/types.py to import Decimal
Evan Broder [Mon, 14 Jul 2008 06:14:21 +0000 (06:14 +0000)]
Fix model/types.py to import Decimal

16 years agoActually insert new expenditures
Evan Broder [Mon, 14 Jul 2008 06:14:14 +0000 (06:14 +0000)]
Actually insert new expenditures

16 years agoAdd functions to automatically split up an expenditure
Evan Broder [Mon, 14 Jul 2008 06:14:06 +0000 (06:14 +0000)]
Add functions to automatically split up an expenditure

16 years agoSolve a multithreading issue with the UserSelect converter
Evan Broder [Mon, 14 Jul 2008 06:13:58 +0000 (06:13 +0000)]
Solve a multithreading issue with the UserSelect converter

16 years agoConvert dollar amounts to Decimals instead of floats
Evan Broder [Mon, 14 Jul 2008 06:13:50 +0000 (06:13 +0000)]
Convert dollar amounts to Decimals instead of floats

16 years agoAdd a function for easily updating SQLAlchemy record objects
Evan Broder [Mon, 14 Jul 2008 06:13:41 +0000 (06:13 +0000)]
Add a function for easily updating SQLAlchemy record objects

16 years agoChange the repr of Splits to match the new db structure.
Evan Broder [Mon, 14 Jul 2008 06:13:34 +0000 (06:13 +0000)]
Change the repr of Splits to match the new db structure.

16 years agoMove splits onto a separate page
Evan Broder [Mon, 14 Jul 2008 06:13:26 +0000 (06:13 +0000)]
Move splits onto a separate page

16 years agoAdding more fields to the expenditure form
Evan Broder [Mon, 14 Jul 2008 06:13:17 +0000 (06:13 +0000)]
Adding more fields to the expenditure form

16 years agoAdd new action to spend controller for testing validation
Evan Broder [Mon, 14 Jul 2008 06:13:09 +0000 (06:13 +0000)]
Add new action to spend controller for testing validation

16 years agoStore splits as straight currency instead of percentages
Evan Broder [Mon, 14 Jul 2008 06:13:02 +0000 (06:13 +0000)]
Store splits as straight currency instead of percentages

16 years agoRounding currency values is useful; make it a helper
Evan Broder [Mon, 14 Jul 2008 06:12:49 +0000 (06:12 +0000)]
Rounding currency values is useful; make it a helper

16 years agoAdd a validator to the UserSelect dropdown
Evan Broder [Sun, 13 Jul 2008 18:43:13 +0000 (18:43 +0000)]
Add a validator to the UserSelect dropdown

Converts back and forth between a SQLAlchemy object and the numeric ID

16 years agoI don't actually want to fight with two different databases
Evan Broder [Sun, 13 Jul 2008 18:43:05 +0000 (18:43 +0000)]
I don't actually want to fight with two different databases

16 years agoFix some typos in the model
Evan Broder [Sun, 13 Jul 2008 18:43:00 +0000 (18:43 +0000)]
Fix some typos in the model

16 years agoRoutes components are Unicode strings, so fix the URL universalizer
Evan Broder [Sun, 13 Jul 2008 18:42:53 +0000 (18:42 +0000)]
Routes components are Unicode strings, so fix the URL universalizer

16 years agoCreate controller for entering expenditures
Evan Broder [Sun, 13 Jul 2008 14:57:40 +0000 (14:57 +0000)]
Create controller for entering expenditures

16 years agoSetup basic templating; largely copied from BlueRhapsody
Evan Broder [Sun, 13 Jul 2008 14:57:27 +0000 (14:57 +0000)]
Setup basic templating; largely copied from BlueRhapsody

16 years agoExplicitly specify the primary join for transfer.{debtor,creditor}
Evan Broder [Sun, 13 Jul 2008 14:57:19 +0000 (14:57 +0000)]
Explicitly specify the primary join for transfer.{debtor,creditor}