zond / godip

A dippy adjudicator in Go.
GNU General Public License v3.0
27 stars 22 forks source link

Classical tests failing at HEAD #186

Open Ezequiel-GM opened 7 months ago

Ezequiel-GM commented 7 months ago

Recently cloned the main branch and ran the Classical variant tests as outline in the repo's README:

$ go test
Running 6.I.1
Res(kie) (deps [])
  Adj(kie)
  kie: Success
  No guessing, resolving kie
kie: Success (deps [])
Res(mun) (deps [])
  Adj(mun)
  mun: Success
  No guessing, resolving mun
mun: Success (deps [])
Sorted units for Germany is par:2, kie:0, mun:0
Removing par since it wasn't disbanded by order
--- FAIL: TestDATC (0.06s)
    classical_test.go:219: 6.I.1: Expected {Army Germany} in par, but found nothing
    classical_test.go:236: 6.I.1: Expected mun to be empty, but found {Army Germany}
    classical_test.go:247: 6.I.1: ### Units:
    classical_test.go:249: 6.I.1: war {Army Russia}
    classical_test.go:249: 6.I.1: par {Army Germany}
    classical_test.go:251: 6.I.1: ### Dislodged before:
    classical_test.go:255: 6.I.1: ### Orders:
    classical_test.go:257: 6.I.1: war Build Army
    classical_test.go:257: 6.I.1: kie Build Army
    classical_test.go:257: 6.I.1: mun Build Army
    classical_test.go:259: 6.I.1: ### Units after:
    classical_test.go:261: 6.I.1: mun {Army Germany}
    classical_test.go:261: 6.I.1: war {Army Russia}
    classical_test.go:261: 6.I.1: kie {Army Germany}
    classical_test.go:263: 6.I.1: ### Dislodged after:
    classical_test.go:267: 6.I.1: ### Errors:
    classical_test.go:269: 6.I.1: kie <nil>
    classical_test.go:269: 6.I.1: mun <nil>
    classical_test.go:271: 6.I.1 failed
FAIL
exit status 1
FAIL    github.com/zond/godip/variants/classical        0.171s
zond commented 7 months ago

How do I reproduce this?

zond@rlyeh:~$ cd projects/godip/
zond@rlyeh:~/projects/godip{master}$ git pull
X11 forwarding request failed on channel 0
Already up to date.
zond@rlyeh:~/projects/godip{master}$ go test
PASS
ok      github.com/zond/godip   0.015s
zond@rlyeh:~/projects/godip{master}$ cd variants/classical
zond@rlyeh:~/projects/godip/variants/classical{master}$ go test
PASS
ok      github.com/zond/godip/variants/classical    0.208s
zond@rlyeh:~/projects/godip/variants/classical{master}$ 
Ezequiel-GM commented 7 months ago

Using the same commands you just issued I get a failing test...

zeque@DESKTOP-I5CGNTN MINGW64 ~/Documents/godip (master)
$ git pull
Already up to date.

zeque@DESKTOP-I5CGNTN MINGW64 ~/Documents/godip (master)
$ go test 
PASS
ok      github.com/zond/godip   0.108s

zeque@DESKTOP-I5CGNTN MINGW64 ~/Documents/godip (master)
$ cd variants/classical

zeque@DESKTOP-I5CGNTN MINGW64 ~/Documents/godip/variants/classical (master)
$ go test
Running 6.I.1     
Res(mun) (deps [])
  Adj(mun)        
  mun: Success    
  No guessing, resolving mun
mun: Success (deps [])
Res(kie) (deps [])
  Adj(kie)
  kie: Success
  No guessing, resolving kie
kie: Success (deps [])
Sorted units for Germany is par:2, kie:0, mun:0
Removing par since it wasn't disbanded by order
--- FAIL: TestDATC (0.06s)
    classical_test.go:219: 6.I.1: Expected {Army Germany} in par, but found nothing
    classical_test.go:236: 6.I.1: Expected mun to be empty, but found {Army Germany}
    classical_test.go:247: 6.I.1: ### Units:
    classical_test.go:249: 6.I.1: war {Army Russia}
    classical_test.go:249: 6.I.1: par {Army Germany}
    classical_test.go:251: 6.I.1: ### Dislodged before:
    classical_test.go:255: 6.I.1: ### Orders:
    classical_test.go:257: 6.I.1: mun Build Army
    classical_test.go:257: 6.I.1: war Build Army
    classical_test.go:257: 6.I.1: kie Build Army
    classical_test.go:259: 6.I.1: ### Units after:
    classical_test.go:261: 6.I.1: war {Army Russia}
    classical_test.go:261: 6.I.1: mun {Army Germany}
    classical_test.go:261: 6.I.1: kie {Army Germany}
    classical_test.go:263: 6.I.1: ### Dislodged after:
    classical_test.go:267: 6.I.1: ### Errors:
    classical_test.go:269: 6.I.1: mun <nil>
    classical_test.go:269: 6.I.1: kie <nil>
    classical_test.go:271: 6.I.1 failed
FAIL
exit status 1
FAIL    github.com/zond/godip/variants/classical        0.169s

zeque@DESKTOP-I5CGNTN MINGW64 ~/Documents/godip/variants/classical (master)
zond commented 7 months ago

Interesting.

zond@rlyeh:~/projects/godip/variants/classical{master}$ git pull
X11 forwarding request failed on channel 0
Already up to date.
zond@rlyeh:~/projects/godip/variants/classical{master}$ go test
PASS
ok      github.com/zond/godip/variants/classical    0.206s
zond@rlyeh:~/projects/godip/variants/classical{master}$ go version
go version go1.21.6 linux/amd64
zond@rlyeh:~/projects/godip/variants/classical{master}$ git rev-parse HEAD
25a35547ab59fcab479fcc0d9dd2e814b0c68103
zond@rlyeh:~/projects/godip/variants/classical{master}$ 

What version of Go are you using? And are you on the exact same git revision?

Ezequiel-GM commented 7 months ago

I ran those tests above from a fresh git clone of the godip repo (on master).

I am using Go 1.22.1.

zeque@DESKTOP-I5CGNTN MINGW64 ~/Documents/godip/variants/classical (master)
$ go version
go version go1.22.1 windows/amd64
Ezequiel-GM commented 7 months ago

FWIW, I cloned the repo again with the same Go version in a MacOS environment, and all tests passed:

Zeques-MacBook-Air:classical zeque$ go version
go version go1.22.1 darwin/amd64

Must be something with my Windows environment.

zond commented 7 months ago

I don't have a Windows machine around, so I can't debug this myself :(

If you have the energy and perseverance to find the bug please send a PR :D

timothyjbrooks commented 6 months ago

Having the same issue with my Windows environment. Unfortunately, I don't have any other machine to test on. This is using go1.14.15. test_output.txt