Commit Graph

42 Commits

Author SHA1 Message Date
Giacomo Pasini 81e90e167b
get highest qc from new view votes 2023-04-11 16:05:03 +02:00
Giacomo Pasini 21ab307969
fix test 2023-04-11 16:05:03 +02:00
Giacomo Pasini 8b44ca5fe0
Remove redundant code and fix commit parent (#16) 2023-04-11 15:03:10 +02:00
Daniel Sanchez caea1b4116
Unhappy path base test assertions (#14)
* Unhappy path tests replacing timeout msgs with NewView. Also revising the conditions to enter into the unhappy path.

* Unhappy path tests assertions.

* Fix assertions on test

* Cleanup

---------

Co-authored-by: mjalalzai <33738574+MForensic@users.noreply.github.com>
2023-04-11 11:57:31 +02:00
danielsanchezq 3a598b23eb Implement first case of unhappy path with simple overlay
Missing final assertions
2023-04-10 20:08:23 +02:00
danielsanchezq 9496da8ad5 Fix unhappy path double increments
Fill missing qc building implementations
2023-04-10 20:08:00 +02:00
danielsanchezq 5ad1d7b90f Fix happy math mockoverlay missing methods 2023-04-10 18:14:38 +02:00
danielsanchezq 1cb757f040 Add is_safe_to_timeout checks on unhappy path methods 2023-04-10 18:13:37 +02:00
danielsanchezq 0922aec404 Extract MockCarnot in happy path tests 2023-04-10 10:50:40 +02:00
Daniel Sanchez d8d22e7219
Overlay based happy tests (#11)
* Cleanup

* Leaf committee member vote.

* Leaf committee member vote, test.

* Leaf committee member vote, test.

* Description

* Description

* Description-refactoring

* Cleanup

* Fix leaf votes test

* Clean overlay

* Test single committee advances

* Remove unhappy path test file

* Update carnot description

* Refactor local_timeout for NewView

* Fix unhappy path conditions and added broadcasting

* Unhappy path tests description

* Commit all grandparents of a block from latest_committed view

* Cleanup docs

* Add unhappy path test vector

* Remove block content

---------

Co-authored-by: mjalalzai <33738574+MForensic@users.noreply.github.com>
2023-04-10 10:28:48 +02:00
Giacomo Pasini 541eb2f1b7
refactor 2023-04-05 15:27:26 +02:00
danielsanchezq af685e62d8 Cleanup 2023-04-05 11:25:04 +02:00
mjalalzai 42a23d6a7b Make sure view changes are incrementally done in ascending order. 2023-04-04 18:15:48 -07:00
mjalalzai 37741364e4 Make sure view changes are incrementally done in ascending order. 2023-04-04 18:09:29 -07:00
mjalalzai 4b2e6638d6 Make sure view changes are incrementally done in ascending order. 2023-04-04 18:08:22 -07:00
mjalalzai 91c537271a views are sequential or consecutive. 2023-04-04 18:01:42 -07:00
danielsanchezq a8cdc1576b Implement timeouts unhappy path 2023-04-04 20:20:59 +02:00
danielsanchezq efce293d71 Fix timeout preconditions 2023-04-04 15:33:12 +02:00
danielsanchezq 9a65a7b9c5 Store just highest qc and aggregated views in AggregatedQc, 2023-04-03 19:33:02 +02:00
danielsanchezq 345c37f234 Add check for double view seen different block 2023-04-03 19:19:58 +02:00
danielsanchezq 805e716aa1 Fix all timeouts are from the same view in timeout call 2023-04-03 13:59:08 +02:00
danielsanchezq f92bb0bf15 Fix tests with block content and comments 2023-04-03 13:49:54 +02:00
danielsanchezq ac09aaf9eb Added block content 2023-04-03 13:49:43 +02:00
danielsanchezq 25560c076c Update build timeout qc test 2023-04-03 11:09:11 +02:00
danielsanchezq 00b650255c Stylish, adjustments and fixes 2023-04-03 11:02:58 +02:00
mjalalzai 9aba275f72 Receive timeout msgs 2023-04-03 00:02:04 -07:00
mjalalzai 4d73ae89c3 Receive timeout msgs 2023-04-02 23:28:33 -07:00
mjalalzai 523ec81577 Received Votes tests 2023-04-01 15:25:45 -07:00
mjalalzai f55d897104 Get max timeout by highQC 2023-04-01 13:26:51 -07:00
mjalalzai 7d0e84fd32 Vote tests 2023-04-01 00:35:13 -07:00
mjalalzai f596893cd3 Tests for updating latest_committed_view and high_qc. 2023-03-31 14:19:11 -07:00
danielsanchezq d056c6b2ab Added base vote test 2023-03-31 14:30:11 +02:00
danielsanchezq 742227a01e Add tests assertions 2023-03-31 12:58:46 +02:00
danielsanchezq 70bbba67cc Fix commit grandparent 2023-03-31 12:58:35 +02:00
Daniel Sanchez 44253376bc
Python impl tests (#9)
* Make easy tests

* Made sure an old aggregatedQC is not used.

* Test when a block has an old qc

* adding highest voted view so that a node doesn't vote twice.

* adding highest voted view so that a node doesn't vote twice.

* Tests for voting

* Tests for voting

* Tests for voting

* Tests for voting

* Update test_happy_path.py

---------

Co-authored-by: mjalalzai <33738574+MForensic@users.noreply.github.com>
2023-03-31 02:38:23 -07:00
danielsanchezq 5dedab1d2f Make easy tests 2023-03-30 20:26:27 +02:00
danielsanchezq 53d7efbb67 Removed rusty_results dependency 2023-03-30 15:39:59 +02:00
danielsanchezq 750542769b Added runnable carnot implementation bare bones 2023-03-30 15:23:54 +02:00
Giacomo Pasini 0603b98076
Add timeout handler 2023-03-30 10:54:10 +02:00
Giacomo Pasini 0adbf47306
use coarse grained events 2023-03-28 12:14:37 +02:00
Daniel Sanchez 26501440b1
Timout python version (#3) 2023-03-22 04:13:30 -07:00
Daniel Sanchez 4f6c297815
Initial python translation of specification (#1)
* Added spec file
Translate to python except unhappy path

* Fix pr review comments
Cleanup
2023-03-21 05:09:28 -07:00