def test_fractional_tranche_pricing(chain, presale_fund_collector, tranche_pricing, fractional_token, customer): """Tranche amount is calculated correctly for a token having fractions.""" amount = tranche_pricing.call().calculatePrice( to_wei("0.512345678", "ether"), 0, 0, customer, fractional_token.call().decimals()) assert amount == 512345678 d = decimalize_token_amount(fractional_token, amount) assert d == Decimal("5.12345678") # Make sure we get decimals right assert d.as_tuple() == Decimal("5.12345678").as_tuple()
def test_fractional_preico_pricing(presale_fund_collector, tranche_pricing, fractional_token): """Pre-ICO amount is calculated correctly for a token having fractions. """ amount = tranche_pricing.call().calculatePrice( to_wei("0.05", "ether"), 0, 0, presale_fund_collector.address, fractional_token.call().decimals()) assert amount == 100000000 d = decimalize_token_amount(fractional_token, amount) assert d == 1 # Make sure we get decimals right assert d.as_tuple() == Decimal("1.00000000").as_tuple()
def test_fractional_tranche_pricing(chain, presale_fund_collector, tranche_pricing, fractional_token, customer): """Tranche amount is calculated correctly for a token having fractions.""" amount = tranche_pricing.call().calculatePrice( to_wei("0.512345678", "ether"), 0, 0, customer, fractional_token.call().decimals() ) assert amount == 512345678 d = decimalize_token_amount(fractional_token, amount) assert d == Decimal("5.12345678") # Make sure we get decimals right assert d.as_tuple() == Decimal("5.12345678").as_tuple()
def test_fractional_milestone_pricing(chain, presale_fund_collector, milestone_pricing, fractional_token, customer): """Milestone amount is calculated correctly for a token having fractions.""" time_travel(chain, milestone_pricing.functions.getPricingStartsAt().call() + 1) amount = milestone_pricing.functions.calculatePrice( to_wei("0.512345678", "ether"), 0, 0, customer, fractional_token.call().decimals()).call() assert amount == 512345678 d = decimalize_token_amount(fractional_token, amount) assert d == Decimal("5.12345678") # Make sure we get decimals right assert d.as_tuple() == Decimal("5.12345678").as_tuple()
def test_fractional_preico_pricing(presale_fund_collector, tranche_pricing, fractional_token): """Pre-ICO amount is calculated correctly for a token having fractions. """ amount = tranche_pricing.call().calculatePrice( to_wei("0.05", "ether"), 0, 0, presale_fund_collector.address, fractional_token.call().decimals() ) assert amount == 100000000 d = decimalize_token_amount(fractional_token, amount) assert d == 1 # Make sure we get decimals right assert d.as_tuple() == Decimal("1.00000000").as_tuple()