Commit Graph

251 Commits

Author SHA1 Message Date
Christian Kamm b2699aa7f1 Shorten common operations in tests 2021-11-29 16:42:48 +01:00
Christian Kamm 423f8637bc Tiny test comment fixes 2021-11-29 16:33:01 +01:00
Christian Kamm 2c2ed548e7 Remove resolved todo 2021-11-29 16:28:44 +01:00
Christian Kamm a33e3a830d Expand daily vesting tests 2021-11-29 16:27:51 +01:00
Christian Kamm ff61e5cc63 Naming improvements 2021-11-29 16:11:17 +01:00
Christian Kamm 15f06c53b9 Initial daily vesting test
Introduce the ability to set a time offset for testing
2021-11-29 15:56:45 +01:00
Christian Kamm d634e1067d Simplify accessing the clock 2021-11-29 14:23:11 +01:00
Christian Kamm 95fc19d3b1 Tests: minor reformatting 2021-11-29 12:16:41 +01:00
Christian Kamm 1e10adb2f1 Tests for LockupKind::None 2021-11-29 12:07:15 +01:00
Christian Kamm 5b63ba8339 Fixes to vote scaling
- Introduce factors for scaling the fixed part and the time dependent
  part.
- Disable the time dependent vote weight scaling initially. We can only
  enable it once voluntary locking is exposed to users.
- Fix bugs around withdrawals changing the vesting amount.
- Fix bugs with vote weight computation using an incorrect denominator.
- Fix bugs around adding more funds to a locked deposit.

Lots of tests are still needed.
2021-11-29 10:29:21 +01:00
microwavedcola1 b01c59e236 lockup kind none
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2021-11-29 08:10:32 +01:00
microwavedcola1 ef5b11cb3c notes 2021-11-29 06:51:06 +01:00
Christian Kamm ce1e639e71 Add rust-based tests that setup a spl-gov instance 2021-11-28 08:34:10 +01:00
Christian Kamm eed7c60532 Check that mint/vault is appropriate on withdraw 2021-11-27 09:32:28 +01:00
Christian Kamm 4a00417348 Forbid creating voter accounts via CPI 2021-11-27 09:32:28 +01:00
Christian Kamm f3838d2574 Prevent withdrawing in the same slot as a deposit
To prevent deposit / revise / withdraw / vote.
2021-11-27 09:32:28 +01:00
Christian Kamm 8dacaf87c3 Check TokenOwnerRecord on withdraw() 2021-11-27 09:32:28 +01:00
Christian Kamm db37418551 Store parent governance program id in registrar
Needed for later reading TokenOwnerRecord in withdraw()
2021-11-27 09:32:28 +01:00
microwavedcola1 1593975b53 extend tests
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2021-11-27 08:23:09 +01:00
microwavedcola1 36af4a29b3 add todo
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2021-11-27 07:47:36 +01:00
microwavedcola1 bff99fc155 add monthly vesting
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2021-11-26 21:04:05 +01:00
microwavedcola1 23ad57302d make withdraw ts tests work
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2021-11-26 07:49:22 +01:00
microwavedcola1 eccaecc2e5 fix types in tests + fix seeds in withdraw
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2021-11-26 07:30:14 +01:00
Christian Kamm adf0a7e81e Add notes about necessary changes to withdraw() 2021-11-25 18:31:26 +01:00
armaniferrante e382999f90
traivs: Run cargo tests 2021-10-25 09:51:14 -07:00
armaniferrante 20bc67ba74
travis: Use node 17.0.1 2021-10-25 09:07:56 -07:00
armaniferrante 26e2d7870c
Use anchor v0.18.0 2021-10-24 22:16:22 -07:00
armaniferrante 89ef88aef0
Remove warmup 2021-10-24 18:14:06 -07:00
armaniferrante 5badbeb59c
Scale exchange rate mints into common decimals 2021-10-23 16:09:42 -07:00
armaniferrante 71d7a4437b
Untabify inert attribute 2021-10-23 14:03:15 -07:00
armaniferrante 0babb8e8b5
Daily tests passing 2021-10-23 13:48:19 -07:00
armaniferrante c95fa4bf61
Begin daily tests 2021-10-22 22:43:13 -07:00
armaniferrante 4f455659b1
Add cliff tests 2021-10-22 16:57:20 -07:00
armaniferrante 0bdcb475cb
Fix account close 2021-10-21 19:30:52 -07:00
armaniferrante eaf6890146
Create and write vote weight records 2021-10-21 19:16:32 -07:00
armaniferrante f00531fb7f
Fix withdraw freezing 2021-10-21 13:03:59 -07:00
armaniferrante 9059bdd5d1
Use new voting mint for each exchange rate 2021-10-20 15:54:27 -07:00
armaniferrante e3976cd2aa
Add README 2021-10-20 13:08:12 -07:00
armaniferrante 1ace2c28ab
Adjust daily vesting vote decay 2021-10-20 12:54:39 -07:00
armaniferrante 1e3ed58a1c
Static exchange rates 2021-10-20 12:38:54 -07:00
armaniferrante 7bc7d12251
Restructure 2021-10-19 17:08:47 -07:00
armaniferrante 38aa2c0a78
Vesting calculation 2021-10-19 15:08:05 -07:00
armaniferrante 9afa16ce3a
Use scaled amounts for voting power calculation 2021-10-18 17:59:09 -07:00
armaniferrante 23fd61d9a5
Update schedule ix 2021-10-18 17:55:15 -07:00
armaniferrante a47fc9f74a
Untested voting power implementation 2021-10-18 15:48:20 -07:00
armaniferrante dcaa7423c7
Sketch lockup calculation 2021-10-18 12:27:37 -07:00
armaniferrante 8db7c5b449
Decompose deposits into separate instructions 2021-10-16 09:48:59 -07:00
Armani Ferrante 627d572774
Basic test setup 2021-10-15 13:23:04 -05:00
armaniferrante 6671dae536
More scaffolding 2021-10-14 21:05:21 -07:00
armaniferrante ca3aca3ce3
Scaffold 2021-10-14 09:53:35 -07:00