Inject CoreContext into OpenOfferManager, adjust test

This commit is contained in:
ghubstan 2021-03-10 14:15:59 -03:00
parent 5c097d3bcf
commit 067a5c7a08
No known key found for this signature in database
GPG key ID: E35592D6800A861E
2 changed files with 70 additions and 14 deletions

View file

@ -17,6 +17,7 @@
package bisq.core.offer;
import bisq.core.api.CoreContext;
import bisq.core.btc.wallet.BsqWalletService;
import bisq.core.btc.wallet.BtcWalletService;
import bisq.core.btc.wallet.TradeWalletService;
@ -101,6 +102,7 @@ public class OpenOfferManager implements PeerManager.Listener, DecryptedDirectMe
private static final long REPUBLISH_INTERVAL_MS = TimeUnit.MINUTES.toMillis(40);
private static final long REFRESH_INTERVAL_MS = TimeUnit.MINUTES.toMillis(6);
private final CoreContext coreContext;
private final CreateOfferService createOfferService;
private final KeyRing keyRing;
private final User user;
@ -133,7 +135,8 @@ public class OpenOfferManager implements PeerManager.Listener, DecryptedDirectMe
///////////////////////////////////////////////////////////////////////////////////////////
@Inject
public OpenOfferManager(CreateOfferService createOfferService,
public OpenOfferManager(CoreContext coreContext,
CreateOfferService createOfferService,
KeyRing keyRing,
User user,
P2PService p2PService,
@ -152,6 +155,7 @@ public class OpenOfferManager implements PeerManager.Listener, DecryptedDirectMe
FilterManager filterManager,
Broadcaster broadcaster,
PersistenceManager<TradableList<OpenOffer>> persistenceManager) {
this.coreContext = coreContext;
this.createOfferService = createOfferService;
this.keyRing = keyRing;
this.user = user;
@ -658,7 +662,11 @@ public class OpenOfferManager implements PeerManager.Listener, DecryptedDirectMe
availabilityResult = AvailabilityResult.MARKET_PRICE_NOT_AVAILABLE;
} catch (Throwable e) {
log.warn("Trade price check failed. " + e.getMessage());
availabilityResult = AvailabilityResult.UNKNOWN_FAILURE;
if (coreContext.isApiUser())
// Give api user something more than 'unknown_failure'.
availabilityResult = AvailabilityResult.PRICE_CHECK_FAILED;
else
availabilityResult = AvailabilityResult.UNKNOWN_FAILURE;
}
} else {
availabilityResult = AvailabilityResult.USER_IGNORED;

View file

@ -1,5 +1,6 @@
package bisq.core.offer;
import bisq.core.api.CoreContext;
import bisq.core.trade.TradableList;
import bisq.network.p2p.P2PService;
@ -26,12 +27,14 @@ import static org.mockito.Mockito.*;
public class OpenOfferManagerTest {
private PersistenceManager<TradableList<OpenOffer>> persistenceManager;
private CoreContext coreContext;
@Before
public void setUp() throws Exception {
var corruptedStorageFileHandler = mock(CorruptedStorageFileHandler.class);
var storageDir = Files.createTempDirectory("storage").toFile();
persistenceManager = new PersistenceManager<>(storageDir, null, corruptedStorageFileHandler);
coreContext = new CoreContext();
}
@After
@ -46,10 +49,25 @@ public class OpenOfferManagerTest {
when(p2PService.getPeerManager()).thenReturn(mock(PeerManager.class));
final OpenOfferManager manager = new OpenOfferManager(null, null, null, p2PService,
null, null, null, offerBookService,
null, null, null,
null, null, null, null, null, null, null,
final OpenOfferManager manager = new OpenOfferManager(coreContext,
null,
null,
null,
p2PService,
null,
null,
null,
offerBookService,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
persistenceManager);
AtomicBoolean startEditOfferSuccessful = new AtomicBoolean(false);
@ -78,10 +96,25 @@ public class OpenOfferManagerTest {
OfferBookService offerBookService = mock(OfferBookService.class);
when(p2PService.getPeerManager()).thenReturn(mock(PeerManager.class));
final OpenOfferManager manager = new OpenOfferManager(null, null, null, p2PService,
null, null, null, offerBookService,
null, null, null,
null, null, null, null, null, null, null,
final OpenOfferManager manager = new OpenOfferManager(coreContext,
null,
null,
null,
p2PService,
null,
null,
null,
offerBookService,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
persistenceManager);
AtomicBoolean startEditOfferSuccessful = new AtomicBoolean(false);
@ -103,10 +136,25 @@ public class OpenOfferManagerTest {
when(p2PService.getPeerManager()).thenReturn(mock(PeerManager.class));
final OpenOfferManager manager = new OpenOfferManager(null, null, null, p2PService,
null, null, null, offerBookService,
null, null, null,
null, null, null, null, null, null, null,
final OpenOfferManager manager = new OpenOfferManager(coreContext,
null,
null,
null,
p2PService,
null,
null,
null,
offerBookService,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
persistenceManager);
AtomicBoolean startEditOfferSuccessful = new AtomicBoolean(false);