code.vegaprotocol.io/vega@v0.79.0/datanode/integration/parties_test.go (about)

     1  // Copyright (C) 2023 Gobalsky Labs Limited
     2  //
     3  // This program is free software: you can redistribute it and/or modify
     4  // it under the terms of the GNU Affero General Public License as
     5  // published by the Free Software Foundation, either version 3 of the
     6  // License, or (at your option) any later version.
     7  //
     8  // This program is distributed in the hope that it will be useful,
     9  // but WITHOUT ANY WARRANTY; without even the implied warranty of
    10  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    11  // GNU Affero General Public License for more details.
    12  //
    13  // You should have received a copy of the GNU Affero General Public License
    14  // along with this program.  If not, see <http://www.gnu.org/licenses/>.
    15  
    16  package integration_test
    17  
    18  import "testing"
    19  
    20  func TestParties(t *testing.T) {
    21  	queries := map[string]string{
    22  		"Deposits":           "{ partiesConnection{ edges { node { id depositsConnection{ edges { node { id, party { id }, amount, asset { id }, status, createdTimestamp, creditedTimestamp, txHash } } } } } } }",
    23  		"Withdrawals":        "{ partiesConnection{ edges { node { id withdrawalsConnection { edges { node { id, party { id }, amount, asset { id }, status, ref, txHash, createdTimestamp, withdrawnTimestamp } } } } } } }",
    24  		"Delegations":        "{ partiesConnection{ edges { node { id delegationsConnection{ edges { node { node { id }, party{ id }, epoch, amount } } } } } } }",
    25  		"Proposals":          "{ partiesConnection{ edges { node { id proposalsConnection{ edges { node { id votes{ yes { totalNumber } no { totalNumber } } } } } } } } }",
    26  		"Votes":              "{ partiesConnection{ edges { node { id votesConnection{ edges { node { proposalId vote{ value } } } } } } } }",
    27  		"Margin Levels":      "{ partiesConnection{ edges { node { id marginsConnection{ edges { node { market { id }, asset { id }, party { id }, maintenanceLevel, searchLevel, initialLevel, collateralReleaseLevel, timestamp } } } } } } }",
    28  		"LiquidityProvision": "{ partiesConnection{ edges { node { id, ordersConnection { edges { node { id, liquidityProvision { id, party { id }, createdAt, updatedAt, market { id }, commitmentAmount, fee, sells { order { id }, liquidityOrder { reference } }, buys { order { id }, liquidityOrder { reference } }, version, status, reference } } } } } } } }",
    29  		"StakeLinking":       "{ partiesConnection{ edges { node { stakingSummary { currentStakeAvailable, linkings { edges { node { id, type, timestamp, party { id }, amount, status, finalizedAt, txHash } } } } } } } }",
    30  	}
    31  
    32  	for name, query := range queries {
    33  		t.Run(name, func(t *testing.T) {
    34  			assertGraphQLQueriesReturnSame(t, query)
    35  		})
    36  	}
    37  }