QMoney M4, ./gradlew run --args="trades.json 2020-01-01" shows error ; but build success

(QMoney Module 4)

I was not able to get a successful output for this command ./gradlew run --args=“trades.json 2020-01-01” (I’ll refer it as CMND#1 further)
it used to show this error; (in the image below)

but ./gradlew build was successful, all 14 tests passed ;

I debugged my code from PortfolioManagerApplicationTest and everything was correct ( List<Candle> ,(stored in some var) that I returned from getStockQuote had correct values ), when “I debugged code from PortfolioManagerApplication.java” , I found that error in CMND#1 was cz List<Candle>
returned was empty. (2 different behavior)

Anyway since all 14 tests passed, I sent it for assessment, and got successful build in first attempt. (at this point CMND#1 was still showing error)

Yesterday I went through it again and got to know, that the way I was populating the List<Candle> was not completely correct, but it just did the job well.
Then I changed the logic, used a proper one & CMND#1 was also successful.

given all this; I want to know why

  • CMND#1 showed error but still the 1st build was successful…
  • while debugging from PortfolioManagerApplicationTest showed normal behavior (List<Candle> properly populated), but debugging from PortfolioManagerApplication my List<Candle> was empty (and ie the reason I wasn’t able to run CMND#1), why would my logic work in 1st case but not in the other?

(I have commented the logic I used earlier, it’s in getStockQuote of portfoliomanagerimpl ; someone from team can look into it, if needed)

Now that I changed the logic which, I know is completely correct CMND#1 gives me the required output.
But I need to get a proper understanding about this, can someone explain all this?

@ajay-crio @anand-crio @sridherj-criodo

This is probably due to a mistake in the buildURI function(), can you check again?
The http call is not proper.

Oh nvm, you are already in module 6, I am closing this ticket