offload some stuff from agora-test to agora-sample and agora-testlib

This commit is contained in:
fanghr 2022-05-12 18:55:39 +08:00
parent 3d414b334a
commit 283edd64b7
No known key found for this signature in database
GPG key ID: 35CD9A71CD5D5870
12 changed files with 56 additions and 39 deletions

View file

@ -1,11 +1,11 @@
{- | {- |
Module : Spec.Sample.Effect.TreasuryWithdrawalEffect Module : Sample.Effect.TreasuryWithdrawalEffect
Maintainer : seungheon.ooh@gmail.com Maintainer : seungheon.ooh@gmail.com
Description: Sample based testing for Treasury Withdrawal Effect Description: Sample based testing for Treasury Withdrawal Effect
This module provides smaples for Treasury Withdrawal Effect tests. This module provides samples for Treasury Withdrawal Effect tests.
-} -}
module Spec.Sample.Effect.TreasuryWithdrawal ( module Sample.Effect.TreasuryWithdrawal (
inputTreasury, inputTreasury,
inputUser, inputUser,
inputGAT, inputGAT,

View file

@ -1,11 +1,11 @@
{- | {- |
Module : Spec.Sample.Proposal Module : Sample.Proposal
Maintainer : emi@haskell.fyi Maintainer : emi@haskell.fyi
Description: Sample based testing for Proposal utxos Description: Sample based testing for Proposal utxos
This module tests primarily the happy path for Proposal interactions This module tests primarily the happy path for Proposal interactions
-} -}
module Spec.Sample.Proposal ( module Sample.Proposal (
-- * Script contexts -- * Script contexts
proposalCreation, proposalCreation,
cosignProposal, cosignProposal,
@ -49,8 +49,8 @@ import Agora.Proposal (
import Agora.Stake (Stake (..), StakeDatum (StakeDatum)) import Agora.Stake (Stake (..), StakeDatum (StakeDatum))
import Plutarch.SafeMoney (Tagged (Tagged), untag) import Plutarch.SafeMoney (Tagged (Tagged), untag)
import PlutusTx.AssocMap qualified as AssocMap import PlutusTx.AssocMap qualified as AssocMap
import Spec.Sample.Shared import Sample.Shared
import Spec.Util (datumPair, toDatumHash) import Test.Util (datumPair, toDatumHash)
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------

View file

@ -1,11 +1,11 @@
{- | {- |
Module : Spec.Sample.Shared Module : Sample.Shared
Maintainer : emi@haskell.fyi Maintainer : emi@haskell.fyi
Description: Shared useful values for creating Samples for testing. Description: Shared useful values for creating Samples for testing.
Shared useful values for creating Samples for testing. Shared useful values for creating Samples for testing.
-} -}
module Spec.Sample.Shared ( module Sample.Shared (
-- * Misc -- * Misc
signer, signer,
signer2, signer2,

View file

@ -1,11 +1,11 @@
{- | {- |
Module : Spec.Sample.Stake Module : Sample.Stake
Maintainer : emi@haskell.fyi Maintainer : emi@haskell.fyi
Description: Sample based testing for Stake utxos Description: Sample based testing for Stake utxos
This module tests primarily the happy path for Stake creation This module tests primarily the happy path for Stake creation
-} -}
module Spec.Sample.Stake ( module Sample.Stake (
stake, stake,
stakeSymbol, stakeSymbol,
validatorHashTN, validatorHashTN,
@ -48,8 +48,8 @@ import Agora.SafeMoney (GTTag)
import Agora.Stake import Agora.Stake
import Agora.Stake.Scripts (stakeValidator) import Agora.Stake.Scripts (stakeValidator)
import Plutarch.SafeMoney import Plutarch.SafeMoney
import Spec.Sample.Shared import Sample.Shared
import Spec.Util (datumPair, toDatumHash) import Test.Util (datumPair, toDatumHash)
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------

View file

@ -1,14 +1,14 @@
{-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TemplateHaskell #-}
{- | {- |
Module: Spec.Sample.Treasury Module: Sample.Treasury
Description: Sample data for `Spec.Treasury`. Description: Sample data for `Spec.Treasury`.
Maintainer: jack@mlabs.city Maintainer: jack@mlabs.city
This module contains sample data, used in the tests written in This module contains sample data, used in the tests written in
`Spec.Treasury`. `Spec.Treasury`.
-} -}
module Spec.Sample.Treasury ( module Sample.Treasury (
gatCs, gatCs,
validCtx, validCtx,
treasuryRef, treasuryRef,
@ -38,7 +38,7 @@ import Plutus.V1.Ledger.Scripts (
ValidatorHash (ValidatorHash), ValidatorHash (ValidatorHash),
) )
import Plutus.V1.Ledger.Value qualified as Value import Plutus.V1.Ledger.Value qualified as Value
import Spec.Sample.Shared ( import Sample.Shared (
gatCs, gatCs,
gatTn, gatTn,
minAda, minAda,
@ -47,7 +47,7 @@ import Spec.Sample.Shared (
treasuryOut, treasuryOut,
wrongEffHash, wrongEffHash,
) )
import Spec.Util (datumPair) import Test.Util (datumPair)
{- | A `ScriptContext` that should be compatible with treasury {- | A `ScriptContext` that should be compatible with treasury
transactions. transactions.

View file

@ -33,7 +33,7 @@ import Plutus.V1.Ledger.Api (
import Plutus.V1.Ledger.Interval qualified as Interval import Plutus.V1.Ledger.Interval qualified as Interval
import Plutus.V1.Ledger.Value qualified as Value import Plutus.V1.Ledger.Value qualified as Value
import PlutusTx.AssocMap qualified as AssocMap import PlutusTx.AssocMap qualified as AssocMap
import Spec.Util (scriptFails, scriptSucceeds) import Test.Util (scriptFails, scriptSucceeds)
currencySymbol :: CurrencySymbol currencySymbol :: CurrencySymbol
currencySymbol = "deadbeef" currencySymbol = "deadbeef"

View file

@ -12,7 +12,7 @@ import Agora.Effect.TreasuryWithdrawal (
treasuryWithdrawalValidator, treasuryWithdrawalValidator,
) )
import Plutus.V1.Ledger.Value qualified as Value import Plutus.V1.Ledger.Value qualified as Value
import Spec.Sample.Effect.TreasuryWithdrawal ( import Sample.Effect.TreasuryWithdrawal (
buildReceiversOutputFromDatum, buildReceiversOutputFromDatum,
buildScriptContext, buildScriptContext,
currSymbol, currSymbol,
@ -25,8 +25,8 @@ import Spec.Sample.Effect.TreasuryWithdrawal (
treasuries, treasuries,
users, users,
) )
import Spec.Util (effectFailsWith, effectSucceedsWith)
import Test.Tasty (TestTree, testGroup) import Test.Tasty (TestTree, testGroup)
import Test.Util (effectFailsWith, effectSucceedsWith)
tests :: [TestTree] tests :: [TestTree]
tests = tests =

View file

@ -34,11 +34,11 @@ import Agora.Stake.Scripts (stakeValidator)
import Plutarch.SafeMoney (Tagged (Tagged)) import Plutarch.SafeMoney (Tagged (Tagged))
import Plutus.V1.Ledger.Api (ScriptContext (..), ScriptPurpose (..)) import Plutus.V1.Ledger.Api (ScriptContext (..), ScriptPurpose (..))
import PlutusTx.AssocMap qualified as AssocMap import PlutusTx.AssocMap qualified as AssocMap
import Spec.Sample.Proposal qualified as Proposal import Sample.Proposal qualified as Proposal
import Spec.Sample.Shared (signer, signer2) import Sample.Shared (signer, signer2)
import Spec.Sample.Shared qualified as Shared import Sample.Shared qualified as Shared
import Spec.Util (policySucceedsWith, validatorSucceedsWith)
import Test.Tasty (TestTree, testGroup) import Test.Tasty (TestTree, testGroup)
import Test.Util (policySucceedsWith, validatorSucceedsWith)
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------

View file

@ -24,9 +24,9 @@ import Agora.Stake.Scripts (stakePolicy, stakeValidator)
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
import Spec.Sample.Stake (DepositWithdrawExample (DepositWithdrawExample, delta, startAmount), signer) import Sample.Stake (DepositWithdrawExample (DepositWithdrawExample, delta, startAmount), signer)
import Spec.Sample.Stake qualified as Stake import Sample.Stake qualified as Stake
import Spec.Util (policyFailsWith, policySucceedsWith, toDatum, validatorFailsWith, validatorSucceedsWith) import Test.Util (policyFailsWith, policySucceedsWith, toDatum, validatorFailsWith, validatorSucceedsWith)
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------

View file

@ -37,10 +37,10 @@ import Plutus.V1.Ledger.Credential (
StakingCredential (StakingHash), StakingCredential (StakingHash),
) )
import Plutus.V1.Ledger.Value qualified as Value import Plutus.V1.Ledger.Value qualified as Value
import Spec.Sample.Shared ( import Sample.Shared (
trCredential, trCredential,
) )
import Spec.Sample.Treasury ( import Sample.Treasury (
gatCs, gatCs,
gatTn, gatTn,
trCtxGATNameNotAddress, trCtxGATNameNotAddress,
@ -48,8 +48,8 @@ import Spec.Sample.Treasury (
validCtx, validCtx,
walletIn, walletIn,
) )
import Spec.Util (validatorFailsWith, validatorSucceedsWith)
import Test.Tasty (TestTree, testGroup) import Test.Tasty (TestTree, testGroup)
import Test.Util (validatorFailsWith, validatorSucceedsWith)
tests :: [TestTree] tests :: [TestTree]
tests = tests =

View file

@ -1,5 +1,5 @@
{- | {- |
Module : Spec.Util Module : Test.Util
Maintainer : emi@haskell.fyi Maintainer : emi@haskell.fyi
Description: Utility functions for testing Plutarch scripts with ScriptContext Description: Utility functions for testing Plutarch scripts with ScriptContext
@ -22,7 +22,7 @@ Utility functions for testing Plutarch scripts with ScriptContext:
- 'scriptFails': checks that an arbitrary script `perror`s out. - 'scriptFails': checks that an arbitrary script `perror`s out.
-} -}
module Spec.Util ( module Test.Util (
-- * Testing utils -- * Testing utils
scriptSucceeds, scriptSucceeds,
scriptFails, scriptFails,

View file

@ -152,6 +152,26 @@ library pprelude
hs-source-dirs: agora hs-source-dirs: agora
default-language: Haskell2010 default-language: Haskell2010
library agora-testlib
import: lang, deps, test-deps
exposed-modules: Test.Util
hs-source-dirs: agora-testlib
library agora-sample
import: lang, deps, test-deps
build-depends:
, agora
, agora-testlib
exposed-modules:
Sample.Effect.TreasuryWithdrawal
Sample.Proposal
Sample.Shared
Sample.Stake
Sample.Treasury
hs-source-dirs: agora-sample
test-suite agora-test test-suite agora-test
import: lang, deps, test-deps import: lang, deps, test-deps
type: exitcode-stdio-1.0 type: exitcode-stdio-1.0
@ -162,16 +182,13 @@ test-suite agora-test
Spec.Effect.TreasuryWithdrawal Spec.Effect.TreasuryWithdrawal
Spec.Model.MultiSig Spec.Model.MultiSig
Spec.Proposal Spec.Proposal
Spec.Sample.Effect.TreasuryWithdrawal
Spec.Sample.Proposal
Spec.Sample.Shared
Spec.Sample.Stake
Spec.Sample.Treasury
Spec.Stake Spec.Stake
Spec.Treasury Spec.Treasury
Spec.Util
build-depends: agora build-depends:
, agora
, agora-sample
, agora-testlib
benchmark agora-bench benchmark agora-bench
import: lang, deps import: lang, deps