From 240a3b23439e529219bebfde8778e6a09fe21666 Mon Sep 17 00:00:00 2001 From: Ben Henning Date: Mon, 25 Nov 2019 22:51:48 -0800 Subject: [PATCH] Fix #425: Update fraction rule parsing to use non-negative int instead of double (#450) * Update fraction rule parsing to use non-negative int instead of double. * Address reviewer comment. --- .../main/java/org/oppia/domain/util/StateRetriever.kt | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/domain/src/main/java/org/oppia/domain/util/StateRetriever.kt b/domain/src/main/java/org/oppia/domain/util/StateRetriever.kt index e6d9a55e35f..d378da5b25d 100644 --- a/domain/src/main/java/org/oppia/domain/util/StateRetriever.kt +++ b/domain/src/main/java/org/oppia/domain/util/StateRetriever.kt @@ -181,10 +181,16 @@ class StateRetriever @Inject constructor( while (inputKeysIterator.hasNext()) { val inputName = inputKeysIterator.next() when (ruleSpecBuilder.ruleType) { - "HasDenominatorEqualTo", "HasNumeratorEqualTo" -> ruleSpecBuilder.putInput( + "HasNumeratorEqualTo" -> ruleSpecBuilder.putInput( inputName, InteractionObject.newBuilder() - .setReal(inputsJson.getDouble(inputName)) + .setSignedInt(inputsJson.getInt(inputName)) + .build() + ) + "HasDenominatorEqualTo" -> ruleSpecBuilder.putInput( + inputName, + InteractionObject.newBuilder() + .setNonNegativeInt(inputsJson.getInt(inputName)) .build() ) else -> ruleSpecBuilder.putInput(inputName, createExactInputFromJson(inputsJson, inputName, interactionId))