(t *testing.T)
| 115 | } |
| 116 | |
| 117 | func TestGenerateAnswer(t *testing.T) { |
| 118 | answer, err := GenerateAnswer(answers, previousBlock, currentNode) |
| 119 | if err != nil { |
| 120 | t.Error(err) |
| 121 | } |
| 122 | sqlIndex, err := getNextPuzzle(answers, previousBlock) |
| 123 | if err != nil { |
| 124 | t.Error(err) |
| 125 | } |
| 126 | record := []byte(selectRecord(sqlIndex)) |
| 127 | answerHash := hash.HashH(append(record, []byte(currentNode.ID)...)) |
| 128 | wantedAnswer := NewAnswer(previousBlock.ID, currentNode.ID, answerHash) |
| 129 | if !reflect.DeepEqual(*answer, *wantedAnswer) { |
| 130 | t.Errorf("answer is %s, should be %s", *answer, *wantedAnswer) |
| 131 | } |
| 132 | |
| 133 | // void answers |
| 134 | answer, err = GenerateAnswer(voidAnswer, previousBlock, currentNode) |
| 135 | if err == nil { |
| 136 | t.Errorf("answer is %+v, should be failed", answer) |
| 137 | } |
| 138 | |
| 139 | // void block |
| 140 | answer, err = GenerateAnswer(answers, voidBlock, currentNode) |
| 141 | if err == nil { |
| 142 | t.Errorf("answer is %+v, should be failed", answer) |
| 143 | } |
| 144 | |
| 145 | // void node |
| 146 | answer, err = GenerateAnswer(answers, previousBlock, voidNode) |
| 147 | if err == nil { |
| 148 | t.Errorf("answer is %+v, should be failed", answer) |
| 149 | } |
| 150 | |
| 151 | } |
| 152 | |
| 153 | func init() { |
| 154 | currentNode = proto.Node{ID: "123456"} |
nothing calls this directly
no test coverage detected