From b1a323afaa38b18c83b8009ab9d6d5a6fea5863c Mon Sep 17 00:00:00 2001 From: Seungheon Oh Date: Mon, 30 May 2022 09:53:55 -0500 Subject: [PATCH] Restructure `agora-spec` and `agora-spec` is merged to be `agora-specs`; `agora-testlib` contains what previously was `Spec.Specification`. --- agora-bench/Bench.hs | 2 +- agora-bench/Main.hs | 2 +- .../Sample/Effect/GovernorMutation.hs | 0 .../Sample/Effect/TreasuryWithdrawal.hs | 0 .../Sample/Governor.hs | 0 .../Sample/Proposal.hs | 0 .../Sample/Shared.hs | 0 {agora-sample => agora-specs}/Sample/Stake.hs | 0 .../Sample/Treasury.hs | 0 .../Spec/AuthorityToken.hs | 2 +- .../Spec/Effect/GovernorMutation.hs | 2 +- .../Spec/Effect/TreasuryWithdrawal.hs | 2 +- {agora-spec => agora-specs}/Spec/Governor.hs | 2 +- .../Spec/Model/MultiSig.hs | 0 {agora-spec => agora-specs}/Spec/Proposal.hs | 2 +- {agora-spec => agora-specs}/Spec/Stake.hs | 2 +- {agora-spec => agora-specs}/Spec/Treasury.hs | 2 +- {agora-spec => agora-specs}/Spec/Utils.hs | 0 agora-test/Spec.hs | 2 +- .../Test}/Specification.hs | 4 +-- agora.cabal | 28 +++++++------------ 21 files changed, 22 insertions(+), 30 deletions(-) rename {agora-sample => agora-specs}/Sample/Effect/GovernorMutation.hs (100%) rename {agora-sample => agora-specs}/Sample/Effect/TreasuryWithdrawal.hs (100%) rename {agora-sample => agora-specs}/Sample/Governor.hs (100%) rename {agora-sample => agora-specs}/Sample/Proposal.hs (100%) rename {agora-sample => agora-specs}/Sample/Shared.hs (100%) rename {agora-sample => agora-specs}/Sample/Stake.hs (100%) rename {agora-sample => agora-specs}/Sample/Treasury.hs (100%) rename {agora-spec => agora-specs}/Spec/AuthorityToken.hs (99%) rename {agora-spec => agora-specs}/Spec/Effect/GovernorMutation.hs (98%) rename {agora-spec => agora-specs}/Spec/Effect/TreasuryWithdrawal.hs (99%) rename {agora-spec => agora-specs}/Spec/Governor.hs (98%) rename {agora-spec => agora-specs}/Spec/Model/MultiSig.hs (100%) rename {agora-spec => agora-specs}/Spec/Proposal.hs (99%) rename {agora-spec => agora-specs}/Spec/Stake.hs (98%) rename {agora-spec => agora-specs}/Spec/Treasury.hs (99%) rename {agora-spec => agora-specs}/Spec/Utils.hs (100%) rename {agora-spec/Spec => agora-testlib/Test}/Specification.hs (99%) diff --git a/agora-bench/Bench.hs b/agora-bench/Bench.hs index 53a7cab..a6db55a 100644 --- a/agora-bench/Bench.hs +++ b/agora-bench/Bench.hs @@ -19,7 +19,7 @@ import Plutus.V1.Ledger.Api ( import Plutus.V1.Ledger.Api qualified as Plutus import Prettyprinter (Pretty (pretty), indent, vsep) -import Spec.Specification ( +import Test.Specification ( Specification (Specification), SpecificationExpectation (Success), SpecificationTree (..), diff --git a/agora-bench/Main.hs b/agora-bench/Main.hs index 1e6e8d2..c2748af 100644 --- a/agora-bench/Main.hs +++ b/agora-bench/Main.hs @@ -12,9 +12,9 @@ import Spec.Effect.GovernorMutation qualified as GovernorMutation import Spec.Effect.TreasuryWithdrawal qualified as TreasuryWithdrawal import Spec.Governor qualified as Governor import Spec.Proposal qualified as Proposal -import Spec.Specification (group) import Spec.Stake qualified as Stake import Spec.Treasury qualified as Treasury +import Test.Specification (group) import Prelude -------------------------------------------------------------------------------- diff --git a/agora-sample/Sample/Effect/GovernorMutation.hs b/agora-specs/Sample/Effect/GovernorMutation.hs similarity index 100% rename from agora-sample/Sample/Effect/GovernorMutation.hs rename to agora-specs/Sample/Effect/GovernorMutation.hs diff --git a/agora-sample/Sample/Effect/TreasuryWithdrawal.hs b/agora-specs/Sample/Effect/TreasuryWithdrawal.hs similarity index 100% rename from agora-sample/Sample/Effect/TreasuryWithdrawal.hs rename to agora-specs/Sample/Effect/TreasuryWithdrawal.hs diff --git a/agora-sample/Sample/Governor.hs b/agora-specs/Sample/Governor.hs similarity index 100% rename from agora-sample/Sample/Governor.hs rename to agora-specs/Sample/Governor.hs diff --git a/agora-sample/Sample/Proposal.hs b/agora-specs/Sample/Proposal.hs similarity index 100% rename from agora-sample/Sample/Proposal.hs rename to agora-specs/Sample/Proposal.hs diff --git a/agora-sample/Sample/Shared.hs b/agora-specs/Sample/Shared.hs similarity index 100% rename from agora-sample/Sample/Shared.hs rename to agora-specs/Sample/Shared.hs diff --git a/agora-sample/Sample/Stake.hs b/agora-specs/Sample/Stake.hs similarity index 100% rename from agora-sample/Sample/Stake.hs rename to agora-specs/Sample/Stake.hs diff --git a/agora-sample/Sample/Treasury.hs b/agora-specs/Sample/Treasury.hs similarity index 100% rename from agora-sample/Sample/Treasury.hs rename to agora-specs/Sample/Treasury.hs diff --git a/agora-spec/Spec/AuthorityToken.hs b/agora-specs/Spec/AuthorityToken.hs similarity index 99% rename from agora-spec/Spec/AuthorityToken.hs rename to agora-specs/Spec/AuthorityToken.hs index 2c28b96..f09c9bc 100644 --- a/agora-spec/Spec/AuthorityToken.hs +++ b/agora-specs/Spec/AuthorityToken.hs @@ -32,7 +32,7 @@ import Plutus.V1.Ledger.Api ( import Plutus.V1.Ledger.Interval qualified as Interval import Plutus.V1.Ledger.Value qualified as Value import PlutusTx.AssocMap qualified as AssocMap -import Spec.Specification ( +import Test.Specification ( SpecificationTree, group, scriptFails, diff --git a/agora-spec/Spec/Effect/GovernorMutation.hs b/agora-specs/Spec/Effect/GovernorMutation.hs similarity index 98% rename from agora-spec/Spec/Effect/GovernorMutation.hs rename to agora-specs/Spec/Effect/GovernorMutation.hs index 352d071..c0b8c93 100644 --- a/agora-spec/Spec/Effect/GovernorMutation.hs +++ b/agora-specs/Spec/Effect/GovernorMutation.hs @@ -15,7 +15,7 @@ import Sample.Effect.GovernorMutation ( validNewGovernorDatum, ) import Sample.Shared qualified as Shared -import Spec.Specification ( +import Test.Specification ( SpecificationTree, effectFailsWith, effectSucceedsWith, diff --git a/agora-spec/Spec/Effect/TreasuryWithdrawal.hs b/agora-specs/Spec/Effect/TreasuryWithdrawal.hs similarity index 99% rename from agora-spec/Spec/Effect/TreasuryWithdrawal.hs rename to agora-specs/Spec/Effect/TreasuryWithdrawal.hs index f46808d..08771fa 100644 --- a/agora-spec/Spec/Effect/TreasuryWithdrawal.hs +++ b/agora-specs/Spec/Effect/TreasuryWithdrawal.hs @@ -25,7 +25,7 @@ import Sample.Effect.TreasuryWithdrawal ( treasuries, users, ) -import Spec.Specification ( +import Test.Specification ( SpecificationTree, effectFailsWith, effectSucceedsWith, diff --git a/agora-spec/Spec/Governor.hs b/agora-specs/Spec/Governor.hs similarity index 98% rename from agora-spec/Spec/Governor.hs rename to agora-specs/Spec/Governor.hs index 9bb9495..2cf0f9c 100644 --- a/agora-spec/Spec/Governor.hs +++ b/agora-specs/Spec/Governor.hs @@ -19,7 +19,7 @@ import Agora.Proposal (ProposalId (..)) import Data.Default.Class (Default (def)) import Sample.Governor (createProposal, mintGATs, mintGST, mutateState) import Sample.Shared qualified as Shared -import Spec.Specification ( +import Test.Specification ( SpecificationTree, group, policySucceedsWith, diff --git a/agora-spec/Spec/Model/MultiSig.hs b/agora-specs/Spec/Model/MultiSig.hs similarity index 100% rename from agora-spec/Spec/Model/MultiSig.hs rename to agora-specs/Spec/Model/MultiSig.hs diff --git a/agora-spec/Spec/Proposal.hs b/agora-specs/Spec/Proposal.hs similarity index 99% rename from agora-spec/Spec/Proposal.hs rename to agora-specs/Spec/Proposal.hs index b66310b..684c18c 100644 --- a/agora-spec/Spec/Proposal.hs +++ b/agora-specs/Spec/Proposal.hs @@ -46,7 +46,7 @@ import PlutusTx.AssocMap qualified as AssocMap import Sample.Proposal qualified as Proposal import Sample.Shared (signer, signer2) import Sample.Shared qualified as Shared -import Spec.Specification ( +import Test.Specification ( SpecificationTree, group, policySucceedsWith, diff --git a/agora-spec/Spec/Stake.hs b/agora-specs/Spec/Stake.hs similarity index 98% rename from agora-spec/Spec/Stake.hs rename to agora-specs/Spec/Stake.hs index d48b7d2..c91cfab 100644 --- a/agora-spec/Spec/Stake.hs +++ b/agora-specs/Spec/Stake.hs @@ -22,7 +22,7 @@ import Agora.Stake.Scripts (stakePolicy, stakeValidator) import Sample.Stake (DepositWithdrawExample (DepositWithdrawExample, delta, startAmount), signer) import Sample.Stake qualified as Stake -import Spec.Specification ( +import Test.Specification ( SpecificationTree, group, policyFailsWith, diff --git a/agora-spec/Spec/Treasury.hs b/agora-specs/Spec/Treasury.hs similarity index 99% rename from agora-spec/Spec/Treasury.hs rename to agora-specs/Spec/Treasury.hs index 7f36e89..7cdebe9 100644 --- a/agora-spec/Spec/Treasury.hs +++ b/agora-specs/Spec/Treasury.hs @@ -48,7 +48,7 @@ import Sample.Treasury ( validCtx, walletIn, ) -import Spec.Specification ( +import Test.Specification ( SpecificationTree, group, validatorFailsWith, diff --git a/agora-spec/Spec/Utils.hs b/agora-specs/Spec/Utils.hs similarity index 100% rename from agora-spec/Spec/Utils.hs rename to agora-specs/Spec/Utils.hs diff --git a/agora-test/Spec.hs b/agora-test/Spec.hs index aca4d05..51e4ae7 100644 --- a/agora-test/Spec.hs +++ b/agora-test/Spec.hs @@ -17,7 +17,7 @@ import Spec.Stake qualified as Stake import Spec.Treasury qualified as Treasury import Spec.Utils qualified as Utils -import Spec.Specification (group, toTestTree) +import Test.Specification (group, toTestTree) -- | The Agora test suite. main :: IO () diff --git a/agora-spec/Spec/Specification.hs b/agora-testlib/Test/Specification.hs similarity index 99% rename from agora-spec/Spec/Specification.hs rename to agora-testlib/Test/Specification.hs index 2063260..296497b 100644 --- a/agora-spec/Spec/Specification.hs +++ b/agora-testlib/Test/Specification.hs @@ -1,5 +1,5 @@ {- | -Module : Spec.Specification +Module : Test.Specification Maintainer : seungheon.ooh@gmail.com Description: Helpers to build Specification for testing and bench-marking @@ -22,7 +22,7 @@ Constructors for building a specification for Plutarch scripts: - 'scriptFails': checks that an arbitrary script `perror`s out. -} -module Spec.Specification ( +module Test.Specification ( -- * Structures Specification (..), SpecificationExpectation (..), diff --git a/agora.cabal b/agora.cabal index 16b9ffb..8d3dfa9 100644 --- a/agora.cabal +++ b/agora.cabal @@ -165,10 +165,13 @@ library pprelude library agora-testlib import: lang, deps, test-deps - exposed-modules: Test.Util + exposed-modules: + Test.Specification + Test.Util + hs-source-dirs: agora-testlib -library agora-sample +library agora-specs import: lang, deps, test-deps exposed-modules: Sample.Effect.GovernorMutation @@ -178,28 +181,18 @@ library agora-sample Sample.Shared Sample.Stake Sample.Treasury - - hs-source-dirs: agora-sample - build-depends: agora-testlib - -library agora-spec - import: lang, deps, test-deps - exposed-modules: Spec.AuthorityToken Spec.Effect.GovernorMutation Spec.Effect.TreasuryWithdrawal Spec.Governor Spec.Model.MultiSig Spec.Proposal - Spec.Specification Spec.Stake Spec.Treasury Spec.Utils - hs-source-dirs: agora-spec - build-depends: - , agora-sample - , agora-testlib + hs-source-dirs: agora-specs + build-depends: agora-testlib test-suite agora-test import: lang, deps, test-deps @@ -207,8 +200,7 @@ test-suite agora-test main-is: Spec.hs hs-source-dirs: agora-test build-depends: - , agora-sample - , agora-spec + , agora-specs , agora-testlib benchmark agora-bench @@ -222,8 +214,8 @@ benchmark agora-bench type: exitcode-stdio-1.0 build-depends: , agora - , agora-sample - , agora-spec + , agora-specs + , agora-testlib , cassava , optparse-applicative