| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 | 
							- Feature: Full vote correctness evaluator on encrypted values
 
- 	Scenario: No rule specified
 
- 		When the selection contains an option with attributes unusedAttributeId11, unusedAttributeId12, attributeId4
 
- 		When evaluating correctness on the encryped options
 
- 		Then the server-side correctness should pass
 
- 		Then finish server-side correctness test
 
- 		
 
- 	Scenario: Correctness is successful if the submitted options are satisfying the attributes
 
- 		Given a contest with name contest1
 
- 		Given a question with correctness attribute attributeId1 with maximum selection of 2
 
- 		Given a question with correctness attribute attributeId2 with maximum selection of 1
 
- 		Given a contest with name contest2
 
- 		Given a question with correctness attribute attributeId3 with maximum selection of 1
 
- 		Given a question with correctness attribute attributeId4 with maximum selection of 2
 
- 		When the selection contains an option with attributes unusedAttributeId1, unusedAttributeId2, attributeId1
 
- 		When the selection contains an option with attributes unusedAttributeId3, unusedAttributeId4, attributeId1
 
- 		When the selection contains an option with attributes unusedAttributeId5, unusedAttributeId6, attributeId2
 
- 		When the selection contains an option with attributes unusedAttributeId7, unusedAttributeId8, attributeId3
 
- 		When the selection contains an option with attributes unusedAttributeId9, unusedAttributeId10, attributeId4
 
- 		When the selection contains an option with attributes unusedAttributeId11, unusedAttributeId12, attributeId4
 
- 		When evaluating correctness on the encryped options
 
- 		Then the server-side correctness should pass
 
- 		Then finish server-side correctness test
 
- 	
 
- 	Scenario: Correctness fails if the submitted options are not satisfying the attributes
 
- 		Given a contest with name contest1
 
- 		Given a question with correctness attribute attributeId1 with maximum selection of 2
 
- 		Given a question with correctness attribute attributeId2 with maximum selection of 1
 
- 		Given a contest with name contest2
 
- 		Given a question with correctness attribute attributeId3 with maximum selection of 2
 
- 		Given a question with correctness attribute attributeId4 with maximum selection of 1
 
- 		When the selection contains an option with attributes unusedAttributeId1, unusedAttributeId2, attributeId1
 
- 		When the selection contains an option with attributes unusedAttributeId3, unusedAttributeId4, attributeId2
 
- 		When the selection contains an option with attributes unusedAttributeId5, unusedAttributeId6, attributeId2
 
- 		When the selection contains an option with attributes unusedAttributeId7, unusedAttributeId8, attributeId3
 
- 		When the selection contains an option with attributes unusedAttributeId9, unusedAttributeId10, attributeId4
 
- 		When the selection contains an option with attributes unusedAttributeId11, unusedAttributeId12, attributeId4
 
- 		When evaluating correctness on the encryped options
 
- 		Then the server-side correctness should fail
 
- 		Then the attribute correctness error should be MIN_ERROR, contest1
 
- 		Then the attribute correctness error should be MAX_ERROR, contest1
 
- 		Then the attribute correctness error should be MIN_ERROR, contest2
 
- 		Then the attribute correctness error should be MAX_ERROR, contest2
 
- 		Then the attribute correctness error does not contain any additional messages
 
- 		Then finish server-side correctness test
 
-         
 
- 	
 
 
  |