@@ -201,7 +201,7 @@ func TestGetNodeCapacityRewards(t *testing.T) {
201201 request = getNodeCapacityRewardsWithStatusOK
202202 resp , err := c .GetNodeCapacityRewards (nodeID )
203203 require .NoError (err )
204- require .Equal (resp , NodeCapacityReward {})
204+ require .Equal (NodeCapacityReward {}, resp )
205205 })
206206
207207 t .Run ("get node rewards for non-existing node" , func (t * testing.T ) {
@@ -212,8 +212,41 @@ func TestGetNodeCapacityRewards(t *testing.T) {
212212
213213 t .Run ("no reports available, status UnprocessableEntity" , func (t * testing.T ) {
214214 request = getNodeCapacityRewardsWithStatusUnprocessableEntity
215- res , err := c .GetNodeCapacityRewards (1 )
215+ res , err := c .GetNodeCapacityRewards (nodeID )
216216 require .Error (err )
217- require .Equal (res , NodeCapacityReward {})
217+ require .Equal (NodeCapacityReward {}, res )
218+
219+ })
220+
221+ t .Run ("node with partial uptime rewards calculation" , func (t * testing.T ) {
222+ request = getNodeCapacityRewardsWithPartialUptime
223+ res , err := c .GetNodeCapacityRewards (nodeID )
224+ require .NoError (err )
225+ expected := NodeCapacityReward {
226+ FarmerReward : 60.0 ,
227+ TfReward : 20.0 ,
228+ FpReward : 20.0 ,
229+ Total : 100.0 ,
230+ UpTimePercentage : 75.0 ,
231+ }
232+ require .Equal (expected , res )
233+ // Verify reward distribution percentages are correct
234+ require .InDelta (0.6 , res .FarmerReward / res .Total , 0.001 )
235+ require .InDelta (0.2 , res .TfReward / res .Total , 0.001 )
236+ require .InDelta (0.2 , res .FpReward / res .Total , 0.001 )
237+ })
238+
239+ t .Run ("bad request due to invalid node ID format" , func (t * testing.T ) {
240+ request = getNodeCapacityRewardsWithBadRequest
241+ res , err := c .GetNodeCapacityRewards (nodeID )
242+ require .Error (err )
243+ require .Equal (NodeCapacityReward {}, res )
244+ })
245+
246+ t .Run ("internal server error when calculating rewards" , func (t * testing.T ) {
247+ request = getNodeCapacityRewardsWithServerError
248+ res , err := c .GetNodeCapacityRewards (nodeID )
249+ require .Error (err )
250+ require .Equal (NodeCapacityReward {}, res )
218251 })
219252}
0 commit comments