Esempio n. 1
0
        public void CreateStandardPool_Success(bool authProviders, bool authTraders, uint fee)
        {
            const bool authPoolCreators = false;

            var market = CreateNewOpdexStandardMarket(authPoolCreators, authProviders, authTraders, fee);

            State.SetContract(Token, true);

            var parameters = new object[] { Token, market.TransactionFee, market.AuthProviders, market.AuthTraders, false };

            SetupCreate <OpdexStandardPool>(CreateResult.Succeeded(Pool), parameters: parameters);

            var pool = market.CreatePool(Token);

            market.GetPool(Token).Should().Be(pool).And.Be(Pool);
            market.AuthProviders.Should().Be(authProviders);
            market.AuthTraders.Should().Be(authTraders);
            market.TransactionFee.Should().Be(fee);
            market.Owner.Should().Be(Owner);

            var expectedPoolCreatedLog = new CreateLiquidityPoolLog {
                Token = Token, Pool = Pool
            };

            VerifyLog(expectedPoolCreatedLog, Times.Once);
        }
Esempio n. 2
0
        public void CreatesPoolWithStakingToken_Success()
        {
            var market = CreateNewOpdexStakingMarket();

            State.SetContract(Token, true);
            State.SetAddress(nameof(StakingToken), StakingToken);

            SetupCreate <OpdexStakingPool>(CreateResult.Succeeded(Pool), parameters: new object[] { Token, StakingToken, market.Fee });

            var pool = market.CreatePool(Token);

            market.GetPool(Token).Should().Be(pool).And.Be(Pool);

            var expectedPoolCreatedLog = new CreateLiquidityPoolLog {
                Token = Token, Pool = Pool
            };

            VerifyLog(expectedPoolCreatedLog, Times.Once);
        }