snowdriftcoop / snowdrift

Infrastructure for Snowdrift.coop. This is a MIRROR of https://gitlab.com/snowdrift/snowdrift. Your issue reports and merge requests are welcome, but they will be moved to gitlab.com. You are encouraged to start there instead!
https://snowdrift.coop
GNU Affero General Public License v3.0
92 stars 36 forks source link

Test failures on NixOS #336

Closed freeman42x closed 7 years ago

freeman42x commented 7 years ago
[neo@nixos:~/Forks/snowdrift]$ ./build.sh test
Snowdrift-0.1.4: unregistering (missing dependencies: classy-prelude-yesod, crowdmatch, esqueleto, hashids, libravatar, persistent, persistent-postgres...)
classy-prelude-yesod-1.2.0: unregistering (missing dependencies: persistent, yesod)
crowdmatch-0.2.0.0: unregistering (missing dependencies: esqueleto, persistent, persistent-template, postgresql-simple-migration, run-persist)
esqueleto-2.5.3: unregistering (missing dependencies: persistent)
hashids-1.0.2.3: unregistering (flags changed from [] to ["--extra-include-dirs=/nix/store/3cjndrsgy200i6cgpkz02nwk891v48jd-gcc-wrapper-6.4.0/include","--extra-include-dirs=/nix/store/3pr7mf8jhmfrdapdzy4bz1rgj7z878ri-ghc-8.0.2/include","--extra-include-dirs=/nix/store/3y85sgx9y16x112zgr25365mnagaw9z4-ncurses-6.0-20170729-dev/include","--extra-include-dirs=/nix/store/8mi2brbyl83kqfk2h8cc9d9h24a62p4k-git-2.14.1/include","--extra-include-dirs=/nix/store/amgl1lsvdd7ff1m8sv1aq0jf03b6dw71-postgresql-9.5.9/include","--extra-include-dirs=/nix/store/bij5d98b61r29fh5by71cg59jjykig5z-gmp-6.1.2-dev/include","--extra-include-dirs=/nix/store/gwavnka8scwayzfriv655zkh1wkkjh0b-zlib-1.2.11-dev/include","--extra-include-dirs=/nix/store/nzsdhi5kbhz9xb8rghbxj61w7byldk09-openssl-1.0.2l-dev/include","--extra-lib-dirs=/nix/store/22avq5410sw61znqj2f5xy6bdxccra5z-openssl-1.0.2l/lib","--extra-lib-dirs=/nix/store/3cjndrsgy200i6cgpkz02nwk891v48jd-gcc-wrapper-6.4.0/lib","--extra-lib-dirs=/nix/store/3pr7mf8jhmfrdapdzy4bz1rgj7z878ri-ghc-8.0.2/lib","--extra-lib-dirs=/nix/store/8mi2brbyl83kqfk2h8cc9d9h24a62p4k-git-2.14.1/lib","--extra-lib-dirs=/nix/store/ahwpd2v0pr41236jymiqd575njcmsmmf-ncurses-6.0-20170729/lib","--extra-lib-dirs=/nix/store/gpsffnqjiqgvgpgakjmxsbgrzwxkmfkx-postgresql-9.5.9-lib/lib","--extra-lib-dirs=/nix/store/ixfxpjx95anklxz8m5rqz2jh3l1dk66i-gmp-6.1.2/lib","--extra-lib-dirs=/nix/store/j1rivzj9p0172gihbssahbbmp4kyciaa-zlib-1.2.11/lib"])
libravatar-0.4: unregistering (flags changed from [] to ["--extra-include-dirs=/nix/store/3cjndrsgy200i6cgpkz02nwk891v48jd-gcc-wrapper-6.4.0/include","--extra-include-dirs=/nix/store/3pr7mf8jhmfrdapdzy4bz1rgj7z878ri-ghc-8.0.2/include","--extra-include-dirs=/nix/store/3y85sgx9y16x112zgr25365mnagaw9z4-ncurses-6.0-20170729-dev/include","--extra-include-dirs=/nix/store/8mi2brbyl83kqfk2h8cc9d9h24a62p4k-git-2.14.1/include","--extra-include-dirs=/nix/store/amgl1lsvdd7ff1m8sv1aq0jf03b6dw71-postgresql-9.5.9/include","--extra-include-dirs=/nix/store/bij5d98b61r29fh5by71cg59jjykig5z-gmp-6.1.2-dev/include","--extra-include-dirs=/nix/store/gwavnka8scwayzfriv655zkh1wkkjh0b-zlib-1.2.11-dev/include","--extra-include-dirs=/nix/store/nzsdhi5kbhz9xb8rghbxj61w7byldk09-openssl-1.0.2l-dev/include","--extra-lib-dirs=/nix/store/22avq5410sw61znqj2f5xy6bdxccra5z-openssl-1.0.2l/lib","--extra-lib-dirs=/nix/store/3cjndrsgy200i6cgpkz02nwk891v48jd-gcc-wrapper-6.4.0/lib","--extra-lib-dirs=/nix/store/3pr7mf8jhmfrdapdzy4bz1rgj7z878ri-ghc-8.0.2/lib","--extra-lib-dirs=/nix/store/8mi2brbyl83kqfk2h8cc9d9h24a62p4k-git-2.14.1/lib","--extra-lib-dirs=/nix/store/ahwpd2v0pr41236jymiqd575njcmsmmf-ncurses-6.0-20170729/lib","--extra-lib-dirs=/nix/store/gpsffnqjiqgvgpgakjmxsbgrzwxkmfkx-postgresql-9.5.9-lib/lib","--extra-lib-dirs=/nix/store/ixfxpjx95anklxz8m5rqz2jh3l1dk66i-gmp-6.1.2/lib","--extra-lib-dirs=/nix/store/j1rivzj9p0172gihbssahbbmp4kyciaa-zlib-1.2.11/lib"])
persistent-2.7.0: unregistering (flags changed from [] to ["--extra-include-dirs=/nix/store/3cjndrsgy200i6cgpkz02nwk891v48jd-gcc-wrapper-6.4.0/include","--extra-include-dirs=/nix/store/3pr7mf8jhmfrdapdzy4bz1rgj7z878ri-ghc-8.0.2/include","--extra-include-dirs=/nix/store/3y85sgx9y16x112zgr25365mnagaw9z4-ncurses-6.0-20170729-dev/include","--extra-include-dirs=/nix/store/8mi2brbyl83kqfk2h8cc9d9h24a62p4k-git-2.14.1/include","--extra-include-dirs=/nix/store/amgl1lsvdd7ff1m8sv1aq0jf03b6dw71-postgresql-9.5.9/include","--extra-include-dirs=/nix/store/bij5d98b61r29fh5by71cg59jjykig5z-gmp-6.1.2-dev/include","--extra-include-dirs=/nix/store/gwavnka8scwayzfriv655zkh1wkkjh0b-zlib-1.2.11-dev/include","--extra-include-dirs=/nix/store/nzsdhi5kbhz9xb8rghbxj61w7byldk09-openssl-1.0.2l-dev/include","--extra-lib-dirs=/nix/store/22avq5410sw61znqj2f5xy6bdxccra5z-openssl-1.0.2l/lib","--extra-lib-dirs=/nix/store/3cjndrsgy200i6cgpkz02nwk891v48jd-gcc-wrapper-6.4.0/lib","--extra-lib-dirs=/nix/store/3pr7mf8jhmfrdapdzy4bz1rgj7z878ri-ghc-8.0.2/lib","--extra-lib-dirs=/nix/store/8mi2brbyl83kqfk2h8cc9d9h24a62p4k-git-2.14.1/lib","--extra-lib-dirs=/nix/store/ahwpd2v0pr41236jymiqd575njcmsmmf-ncurses-6.0-20170729/lib","--extra-lib-dirs=/nix/store/gpsffnqjiqgvgpgakjmxsbgrzwxkmfkx-postgresql-9.5.9-lib/lib","--extra-lib-dirs=/nix/store/ixfxpjx95anklxz8m5rqz2jh3l1dk66i-gmp-6.1.2/lib","--extra-lib-dirs=/nix/store/j1rivzj9p0172gihbssahbbmp4kyciaa-zlib-1.2.11/lib"])
persistent-postgresql-2.6.1: unregistering (missing dependencies: persistent)
persistent-template-2.5.2: unregistering (missing dependencies: persistent)
postgresql-simple-migration-0.1.9.0: unregistering (flags changed from [] to ["--extra-include-dirs=/nix/store/3cjndrsgy200i6cgpkz02nwk891v48jd-gcc-wrapper-6.4.0/include","--extra-include-dirs=/nix/store/3pr7mf8jhmfrdapdzy4bz1rgj7z878ri-ghc-8.0.2/include","--extra-include-dirs=/nix/store/3y85sgx9y16x112zgr25365mnagaw9z4-ncurses-6.0-20170729-dev/include","--extra-include-dirs=/nix/store/8mi2brbyl83kqfk2h8cc9d9h24a62p4k-git-2.14.1/include","--extra-include-dirs=/nix/store/amgl1lsvdd7ff1m8sv1aq0jf03b6dw71-postgresql-9.5.9/include","--extra-include-dirs=/nix/store/bij5d98b61r29fh5by71cg59jjykig5z-gmp-6.1.2-dev/include","--extra-include-dirs=/nix/store/gwavnka8scwayzfriv655zkh1wkkjh0b-zlib-1.2.11-dev/include","--extra-include-dirs=/nix/store/nzsdhi5kbhz9xb8rghbxj61w7byldk09-openssl-1.0.2l-dev/include","--extra-lib-dirs=/nix/store/22avq5410sw61znqj2f5xy6bdxccra5z-openssl-1.0.2l/lib","--extra-lib-dirs=/nix/store/3cjndrsgy200i6cgpkz02nwk891v48jd-gcc-wrapper-6.4.0/lib","--extra-lib-dirs=/nix/store/3pr7mf8jhmfrdapdzy4bz1rgj7z878ri-ghc-8.0.2/lib","--extra-lib-dirs=/nix/store/8mi2brbyl83kqfk2h8cc9d9h24a62p4k-git-2.14.1/lib","--extra-lib-dirs=/nix/store/ahwpd2v0pr41236jymiqd575njcmsmmf-ncurses-6.0-20170729/lib","--extra-lib-dirs=/nix/store/gpsffnqjiqgvgpgakjmxsbgrzwxkmfkx-postgresql-9.5.9-lib/lib","--extra-lib-dirs=/nix/store/ixfxpjx95anklxz8m5rqz2jh3l1dk66i-gmp-6.1.2/lib","--extra-lib-dirs=/nix/store/j1rivzj9p0172gihbssahbbmp4kyciaa-zlib-1.2.11/lib"])
run-persist-0.2.0.0: unregistering (missing dependencies: persistent, persistent-postgresql)
shakespeare-sass-0.1.4: unregistering (missing dependencies: yesod)
yesod-1.4.5: unregistering (missing dependencies: yesod-form, yesod-persistent)
yesod-form-1.4.13: unregistering (missing dependencies: persistent, yesod-persistent)
yesod-persistent-1.4.2: unregistering (missing dependencies: persistent, persistent-template)
postgresql-simple-migration-0.1.9.0: configure (lib + exe)
libravatar-0.4: configure
postgresql-simple-migration-0.1.9.0: build (lib + exe)
libravatar-0.4: build
hashids-1.0.2.3: configure
hashids-1.0.2.3: build
persistent-2.7.0: configure
persistent-2.7.0: build
hashids-1.0.2.3: copy/register
libravatar-0.4: copy/register
postgresql-simple-migration-0.1.9.0: copy/register
persistent-2.7.0: copy/register
esqueleto-2.5.3: configure
esqueleto-2.5.3: build
persistent-template-2.5.2: configure
persistent-template-2.5.2: build
yesod-test-1.5.8: configure
yesod-test-1.5.8: build
persistent-postgresql-2.6.1: configure
persistent-postgresql-2.6.1: build
persistent-template-2.5.2: copy/register
yesod-persistent-1.4.2: configure
yesod-persistent-1.4.2: build
esqueleto-2.5.3: copy/register
yesod-test-1.5.8: copy/register
yesod-persistent-1.4.2: copy/register
yesod-form-1.4.13: configure
persistent-postgresql-2.6.1: copy/register
yesod-form-1.4.13: build
run-persist-0.2.0.0: configure (lib)
run-persist-0.2.0.0: build (lib)
run-persist-0.2.0.0: copy/register
crowdmatch-0.2.0.0: configure (lib + exe)
crowdmatch-0.2.0.0: build (lib + exe)
yesod-form-1.4.13: copy/register
yesod-1.4.5: configure
yesod-1.4.5: build
yesod-1.4.5: copy/register
shakespeare-sass-0.1.4: configure (lib)
crowdmatch-0.2.0.0: copy/register
shakespeare-sass-0.1.4: build (lib)
classy-prelude-yesod-1.2.0: configure
classy-prelude-yesod-1.2.0: build
shakespeare-sass-0.1.4: copy/register
classy-prelude-yesod-1.2.0: copy/register
Completed 15 action(s).
pg_ctl: no server running
waiting for server to start....LOG:  database system was shut down at 2017-09-11 06:40:01 IST
LOG:  MultiXact member wraparound protections are now enabled
LOG:  database system is ready to accept connections
LOG:  autovacuum launcher started
 done
server started
Build completed in 0:02m
crowdmatch-0.2.0.0: unregistering (dependencies changed)
crowdmatch-0.2.0.0: configure (lib + exe + test)
crowdmatch-0.2.0.0: build (lib + exe + test)
crowdmatch-0.2.0.0: copy/register
crowdmatch-0.2.0.0: test (suite: test)
Snowdrift-0.1.4: configure (lib + test)
Snowdrift-0.1.4: build (lib + test)
Snowdrift-0.1.4: copy/register
Snowdrift-0.1.4: test (suite: test)
Completed 4 action(s).
Log files have been written to: /home/neo/Forks/snowdrift/.stack-work/logs/
Test suite failure for package crowdmatch-0.2.0.0
    test:  exited with: ExitFailure 1
Full log available at /home/neo/Forks/snowdrift/.stack-work/logs/crowdmatch-0.2.0.0-test.log

    Migrating: CREATe TABLE "crowdmatch__patron"("id" SERIAL8  PRIMARY KEY UNIQUE,"usr" INT8 NOT NULL,"created" TIMESTAMP WITH TIME ZONE NOT NULL,"payment_token" VARCHAR NULL,"donation_payable" INT4 NOT NULL,"pledge_since" TIMESTAMP WITH TIME ZONE NULL)
    Migrating: CREATe TABLE "crowdmatch__pledge_history"("id" SERIAL8  PRIMARY KEY UNIQUE,"patron" INT8 NOT NULL,"time" TIMESTAMP WITH TIME ZONE NOT NULL,"action" VARCHAR NOT NULL)
    Migrating: CREATe TABLE "crowdmatch__payment_token_history"("id" SERIAL8  PRIMARY KEY UNIQUE,"patron" INT8 NOT NULL,"time" TIMESTAMP WITH TIME ZONE NOT NULL,"action" VARCHAR NOT NULL)
    Migrating: CREATe TABLE "crowdmatch__donation_history"("id" SERIAL8  PRIMARY KEY UNIQUE,"patron" INT8 NOT NULL,"time" TIMESTAMP WITH TIME ZONE NOT NULL,"amount" INT4 NOT NULL,"fee" INT4 NOT NULL)
    Migrating: CREATe TABLE "crowdmatch__crowdmatch_history"("id" SERIAL8  PRIMARY KEY UNIQUE,"patron" INT8 NOT NULL,"date" DATE NOT NULL,"amount" INT4 NOT NULL)
    Migrating: ALTER TABLE "crowdmatch__patron" ADD CONSTRAINT "unique_patron" UNIQUE("usr")
    Migrating: ALTER TABLE "crowdmatch__pledge_history" ADD CONSTRAINT "crowdmatch__pledge_history_patron_fkey" FOREIGN KEY("patron") REFERENCES "crowdmatch__patron"("id")
    Migrating: ALTER TABLE "crowdmatch__payment_token_history" ADD CONSTRAINT "crowdmatch__payment_token_history_patron_fkey" FOREIGN KEY("patron") REFERENCES "crowdmatch__patron"("id")
    Migrating: ALTER TABLE "crowdmatch__donation_history" ADD CONSTRAINT "crowdmatch__donation_history_patron_fkey" FOREIGN KEY("patron") REFERENCES "crowdmatch__patron"("id")
    Migrating: ALTER TABLE "crowdmatch__crowdmatch_history" ADD CONSTRAINT "crowdmatch__crowdmatch_history_patron_fkey" FOREIGN KEY("patron") REFERENCES "crowdmatch__patron"("id")
    Initializing schema
    Execute:    payment-capability

    dep tests
      Persistent.upsert != repsert  FAILED [1]
    unit tests
      stored token
        is retrievable
        disappears
        has history recorded
      fetchPatron creates patron if it doesn't exist FAILED [2]
      stored pledge is retrievable
      deleted pledge is retrievable
      crowd size
        gets bumped by pledging
        is not affected by a bad pledge
        shrinks with removal of payment token
      10 pledges = 1 cent
      1000 pledges = $1000 monthly income
      crowdmatch event
        only counts active patrons
        looks quadratic; 3 patrons = 9 DUs
        sums over multiple events
        creates history
      make-payments event
        creates history
        zeroes donations
        accounts for fees
        adds to the project what it takes from the patron
    properties given random history

    Failures:

      test/main.hs:208: 
      1) dep tests Persistent.upsert != repsert 
           expected: Patron {patronUsr = PPtr 0, patronCreated = 2017-09-11 05:47:58.138197305 UTC, patronPaymentToken = Just (PaymentToken {unPaymentToken = CustomerId "foo"}), patronDonationPayable = DonationUnits 20, patronPledgeSince = Nothing}
            but got: Patron {patronUsr = PPtr 0, patronCreated = 2017-09-11 05:47:58.138197 UTC, patronPaymentToken = Just (PaymentToken {unPaymentToken = CustomerId "foo"}), patronDonationPayable = DonationUnits 20, patronPledgeSince = Nothing}

      test/main.hs:241: 
      2) unit tests fetchPatron creates patron if it doesn't exist
           expected: Patron {patronCreated = 2017-09-11 05:47:58.162241 UTC, patronPaymentToken = Nothing, patronDonationPayable = DonationUnits 0, patronPledgeSince = Nothing}
            but got: Patron {patronCreated = 2017-09-11 05:47:58.162240859 UTC, patronPaymentToken = Nothing, patronDonationPayable = DonationUnits 0, patronPledgeSince = Nothing}

    Randomized with seed 1492858167

    Finished in 11.6263 seconds
    21 examples, 2 failures
chreekat commented 7 years ago

Thanks for reporting! This is a dupe of https://git.snowdrift.coop/sd/snowdrift/issues/45 . We have more info about it... I'll update that issue.