1
0
mirror of https://github.com/aclindsa/moneygo.git synced 2024-12-27 16:02:27 -05:00
Commit Graph

81 Commits

Author SHA1 Message Date
9cd2724416 Remove unused WriteError function 2017-11-23 17:57:36 -05:00
0aa8ac63ab testing: Test importing Gnucash security prices 2017-11-22 21:37:45 -05:00
947db54433 testing: Check more post-gnucash import account balances 2017-11-22 20:59:11 -05:00
d65019f55c gnucash tests: Check for the presence of more accounts and their trees 2017-11-21 05:58:43 -05:00
b06b409cd5 Add initial gnucash importing test
This is woefully incomplete, but tests to make sure at least one balance
on one account is correct...
2017-11-21 05:31:07 -05:00
4d0b33efee securities: Don't use 'precision', a MySQL reserved word, in DB 2017-11-21 05:31:07 -05:00
ac5826daca Add expiration and creation times to sessions
Check expiration time when fetching sessions from cookies
2017-11-19 06:36:52 -05:00
216d413c15 Ensure we don't have duplicate session secrets 2017-11-18 21:20:23 -05:00
e4e474caf2 Remove outdated comment 2017-11-17 21:02:25 -05:00
04d85cd681 Fix gorp to internally lowercase fields for Postgres
Postgres folds all unquoted column names to lowercase, and doing this
allows that to work nicely without screwing up the queries for the other
database engines.
2017-11-17 21:01:06 -05:00
d5ca4395ac Move to gorp v2
This removes the following error, caused by the MySQL Dialect using a
'varchar' for all columns over 256 characters in length, instead of
'text' for the largest:

  2017/11/17 22:41:33 common_test.go:208: Error 1074: Column length too big for column 'Lua' (max = 21844); use BLOB or TEXT instead
2017-11-17 19:53:56 -05:00
b2359e1267 Fixup account transactions to work for both Postgres and MySQL 2017-11-17 05:50:00 -05:00
50dd7b1d26 testing: Use Time.Equal for date comparisons
Postgres actually preserves the timezone, unlike sqlite and mysql...
2017-11-17 05:20:10 -05:00
00e1e899c0 Rebind all SQL queries to acommodate Postgres 2017-11-17 05:09:16 -05:00
73cedfd700 testing: Allow DB engine and DSN to be selected with environment variables 2017-11-16 19:42:58 -05:00
c48c50d2c5 API: Move prices under securities
For example, instead of GETting /prices/5 to query a price with ID 5,
you now must GET /securities/2/prices/5 (assuming price 5's SecurityId
is 2)
2017-11-16 19:32:30 -05:00
5a6be5a07b Stop using form elements for API
Just send the JSON as the request body
2017-11-13 20:48:19 -05:00
9624f0c5bc Move to a consistent way of handling IDs in URLs 2017-11-12 21:15:00 -05:00
e99abfe866 handlers: Cleanup Context, route handling code 2017-11-12 20:39:36 -05:00
507868b7a5 Begin move away from using http.ServeMux 2017-11-12 20:17:27 -05:00
9429b748fa Prefix all API endpoints with 'v1/', pluralize collections 2017-11-11 08:05:09 -05:00
79ed5dad9f testing: Test Lua Prices 2017-11-10 20:49:45 -05:00
9b1b682bac prices: Implement initial API and tests 2017-11-10 20:13:49 -05:00
7e728ff29b testing: Add initial testing of Lua balances 2017-11-08 20:46:13 -05:00
bca3e3b408 Lua balances: Fix order of operands pulled in 2017-11-08 20:44:34 -05:00
5daed2f508 testing: Add tests for Lua dates
Also fix a timezone bug discovered while testing
2017-11-07 05:58:58 -05:00
6115a16f89 testing: Use a different date-creation format for one Lua accounts test 2017-11-06 21:22:01 -05:00
985270f190 testing: Test Lua accounts 2017-11-06 21:16:04 -05:00
fb67ab586f testing: Add __eq and __tostring tests for Lua securities 2017-11-06 05:49:58 -05:00
6c18506432 testing: Separate out simple Lua testing 2017-11-06 05:37:52 -05:00
c4ed7d3c50 testing: Test get_securities() Lua call 2017-11-05 21:25:20 -05:00
0dec4001eb testing: Test Lua securities 2017-11-05 20:53:20 -05:00
5dd27a6c56 Lua: Add Security.AlternateId getter 2017-11-05 20:52:36 -05:00
f2a45dc6b6 Make SecurityType its own type 2017-11-05 20:43:32 -05:00
6fb66ac04e testing: Add initial report tabulation test 2017-11-03 22:13:20 -04:00
0863e5fa5c testing: Don't omit the 0th elements when testing 2017-11-03 20:54:17 -04:00
5504d37482 testing: Improve testing CRUD for reports
Ensure we don't get silent errors if the Lua code is longer than the
database column, don't leave out the first report from testing, test
fetching multiple reports.
2017-11-03 20:50:19 -04:00
72cbcca965 testing: Add RUD tests for reports 2017-11-02 21:20:43 -04:00
82362f7ebc testing: Use an in-memory sqlite3 database
This makes testing *much* faster and removes the need for creating
temporary directories
2017-11-01 21:09:55 -04:00
9cca8d1db6 accounts_test.go: Fix typo in failure message 2017-11-01 21:03:20 -04:00
d3c03e4380 testing: Test creating reports 2017-11-01 21:03:07 -04:00
5b0b0bd03b testing: Ensure account versions increased when creating/deleting transactions 2017-11-01 05:59:16 -04:00
e03944c80f testing: Ensure account versions are increased when modifying transactions 2017-11-01 05:44:40 -04:00
4963e473aa testing: Add files and line numbers to logging output 2017-10-31 21:04:03 -04:00
9721c04e52 testing: More thoroughly test fetching account transactions 2017-10-31 20:56:13 -04:00
8ba6a3dbf2 testing: Add initial account transactions test
Update one SQL query to do an 'INNER JOIN' instead of an 'IN' with a
subquery. This avoids error messages like:
  Error 1235: This version of MariaDB doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
2017-10-30 21:14:19 -04:00
3869f3a3b2 Get all current tests to pass with MySQL
This is done by requiring 'parseTime=true' in the MySQL DSN's (required
by github.com/go-sql-driver/mysql when Scan()ing to time.Time's), and
not forcing update counts to match if rows were updated to what they
already were.
2017-10-24 20:57:55 -04:00
a1d294c309 securities: Allow SQL update count to be 0
MySQL reports 0 here, while sqlite reports 1. Improve the logged message
while we're at it.
2017-10-24 20:24:12 -04:00
bcbb003e40 users: Simplify deletion of prices and splits owned by a user
The previous way was overly complex and didn't work with MySQL anyway
2017-10-24 20:13:42 -04:00
09a5cf9a99 testing: Test fetching all transactions 2017-10-23 21:14:19 -04:00