fix: token and percentage amounts in vote information (#1906)
* fix: token and percentage amounts in vote information * test: adjust tests for new behviour * style: lint
This commit is contained in:
parent
ac03ad8e3d
commit
da068fbbc7
@ -74,7 +74,7 @@ describe('use-vote-information', () => {
|
|||||||
const yesEquityLikeShareWeight = '30';
|
const yesEquityLikeShareWeight = '30';
|
||||||
const noEquityLikeShareWeight = '70';
|
const noEquityLikeShareWeight = '70';
|
||||||
// Note - giving a fixedTokenValue of 1 means a ratio of 1:1 votes to tokens, making sums easier :)
|
// Note - giving a fixedTokenValue of 1 means a ratio of 1:1 votes to tokens, making sums easier :)
|
||||||
const fixedTokenValue = 1;
|
const fixedTokenValue = 1000000000000000000;
|
||||||
|
|
||||||
const proposal = generateProposal({
|
const proposal = generateProposal({
|
||||||
terms: {
|
terms: {
|
||||||
@ -128,7 +128,7 @@ describe('use-vote-information', () => {
|
|||||||
it('correctly returns majority, participation and will-pass status for a proposal with no votes', () => {
|
it('correctly returns majority, participation and will-pass status for a proposal with no votes', () => {
|
||||||
const yesVotes = 0;
|
const yesVotes = 0;
|
||||||
const noVotes = 0;
|
const noVotes = 0;
|
||||||
const fixedTokenValue = 1;
|
const fixedTokenValue = 1000000000000000000;
|
||||||
|
|
||||||
const proposal = generateProposal({
|
const proposal = generateProposal({
|
||||||
votes: {
|
votes: {
|
||||||
@ -150,7 +150,7 @@ describe('use-vote-information', () => {
|
|||||||
it('correctly shows lack of participation for a failing proposal lacking votes', () => {
|
it('correctly shows lack of participation for a failing proposal lacking votes', () => {
|
||||||
const yesVotes = 20;
|
const yesVotes = 20;
|
||||||
const noVotes = 10;
|
const noVotes = 10;
|
||||||
const fixedTokenValue = 1;
|
const fixedTokenValue = 1000000000000000000;
|
||||||
|
|
||||||
const proposal = generateProposal({
|
const proposal = generateProposal({
|
||||||
votes: {
|
votes: {
|
||||||
@ -170,7 +170,7 @@ describe('use-vote-information', () => {
|
|||||||
it('correctly shows participation but lack of majority for a failing proposal with enough votes but not enough majority', () => {
|
it('correctly shows participation but lack of majority for a failing proposal with enough votes but not enough majority', () => {
|
||||||
const yesVotes = 20;
|
const yesVotes = 20;
|
||||||
const noVotes = 70;
|
const noVotes = 70;
|
||||||
const fixedTokenValue = 1;
|
const fixedTokenValue = 1000000000000000000;
|
||||||
|
|
||||||
const proposal = generateProposal({
|
const proposal = generateProposal({
|
||||||
votes: {
|
votes: {
|
||||||
@ -192,7 +192,7 @@ describe('use-vote-information', () => {
|
|||||||
it('correctly shows participation, majority and will-pass data for successful proposal', () => {
|
it('correctly shows participation, majority and will-pass data for successful proposal', () => {
|
||||||
const yesVotes = 70;
|
const yesVotes = 70;
|
||||||
const noVotes = 20;
|
const noVotes = 20;
|
||||||
const fixedTokenValue = 1;
|
const fixedTokenValue = 1000000000000000000;
|
||||||
|
|
||||||
const proposal = generateProposal({
|
const proposal = generateProposal({
|
||||||
votes: {
|
votes: {
|
||||||
@ -216,7 +216,7 @@ describe('use-vote-information', () => {
|
|||||||
const noVotes = 70;
|
const noVotes = 70;
|
||||||
const yesEquityLikeShareWeight = '30';
|
const yesEquityLikeShareWeight = '30';
|
||||||
const noEquityLikeShareWeight = '60';
|
const noEquityLikeShareWeight = '60';
|
||||||
const fixedTokenValue = 1;
|
const fixedTokenValue = 1000000000000000000;
|
||||||
|
|
||||||
const proposal = generateProposal({
|
const proposal = generateProposal({
|
||||||
terms: {
|
terms: {
|
||||||
@ -249,7 +249,7 @@ describe('use-vote-information', () => {
|
|||||||
const noVotes = 70;
|
const noVotes = 70;
|
||||||
const yesEquityLikeShareWeight = '80';
|
const yesEquityLikeShareWeight = '80';
|
||||||
const noEquityLikeShareWeight = '20';
|
const noEquityLikeShareWeight = '20';
|
||||||
const fixedTokenValue = 1;
|
const fixedTokenValue = 1000000000000000000;
|
||||||
|
|
||||||
const proposal = generateProposal({
|
const proposal = generateProposal({
|
||||||
terms: {
|
terms: {
|
||||||
|
@ -3,6 +3,7 @@ import { useAppState } from '../../../contexts/app-state/app-state-context';
|
|||||||
import { BigNumber } from '../../../lib/bignumber';
|
import { BigNumber } from '../../../lib/bignumber';
|
||||||
import { useProposalNetworkParams } from './use-proposal-network-params';
|
import { useProposalNetworkParams } from './use-proposal-network-params';
|
||||||
import type { Proposal_proposal } from '../proposal/__generated__/Proposal';
|
import type { Proposal_proposal } from '../proposal/__generated__/Proposal';
|
||||||
|
import { addDecimal } from '@vegaprotocol/react-helpers';
|
||||||
|
|
||||||
export const useVoteInformation = ({
|
export const useVoteInformation = ({
|
||||||
proposal,
|
proposal,
|
||||||
@ -10,7 +11,7 @@ export const useVoteInformation = ({
|
|||||||
proposal: Proposal_proposal;
|
proposal: Proposal_proposal;
|
||||||
}) => {
|
}) => {
|
||||||
const {
|
const {
|
||||||
appState: { totalSupply },
|
appState: { totalSupply, decimals },
|
||||||
} = useAppState();
|
} = useAppState();
|
||||||
|
|
||||||
const {
|
const {
|
||||||
@ -52,14 +53,18 @@ export const useVoteInformation = ({
|
|||||||
? new BigNumber(requiredMajorityLP).times(100)
|
? new BigNumber(requiredMajorityLP).times(100)
|
||||||
: new BigNumber(100);
|
: new BigNumber(100);
|
||||||
|
|
||||||
const noTokens = new BigNumber(proposal.votes.no.totalTokens);
|
const noTokens = new BigNumber(
|
||||||
|
addDecimal(proposal.votes.no.totalTokens, decimals)
|
||||||
|
);
|
||||||
|
|
||||||
const noEquityLikeShareWeight = !proposal.votes.no
|
const noEquityLikeShareWeight = !proposal.votes.no
|
||||||
.totalEquityLikeShareWeight
|
.totalEquityLikeShareWeight
|
||||||
? new BigNumber(0)
|
? new BigNumber(0)
|
||||||
: new BigNumber(proposal.votes.no.totalEquityLikeShareWeight);
|
: new BigNumber(proposal.votes.no.totalEquityLikeShareWeight);
|
||||||
|
|
||||||
const yesTokens = new BigNumber(proposal.votes.yes.totalTokens);
|
const yesTokens = new BigNumber(
|
||||||
|
addDecimal(proposal.votes.yes.totalTokens, decimals)
|
||||||
|
);
|
||||||
|
|
||||||
const yesEquityLikeShareWeight = !proposal.votes.yes
|
const yesEquityLikeShareWeight = !proposal.votes.yes
|
||||||
.totalEquityLikeShareWeight
|
.totalEquityLikeShareWeight
|
||||||
@ -153,6 +158,7 @@ export const useVoteInformation = ({
|
|||||||
willPassByLPVote,
|
willPassByLPVote,
|
||||||
};
|
};
|
||||||
}, [
|
}, [
|
||||||
|
decimals,
|
||||||
proposal.votes.no.totalEquityLikeShareWeight,
|
proposal.votes.no.totalEquityLikeShareWeight,
|
||||||
proposal.votes.no.totalTokens,
|
proposal.votes.no.totalTokens,
|
||||||
proposal.votes.yes.totalEquityLikeShareWeight,
|
proposal.votes.yes.totalEquityLikeShareWeight,
|
||||||
|
Loading…
Reference in New Issue
Block a user