Skip to content
This repository has been archived by the owner. It is now read-only.

Hook up pystone #851

Merged
merged 9 commits into from Jul 4, 2018
Merged

Hook up pystone #851

merged 9 commits into from Jul 4, 2018

Conversation

@patiences
Copy link
Contributor

@patiences patiences commented Jun 27, 2018

Pystone source here. I've made a couple of very minor adjustments to get it running (see one problem I ran into here), they should not affect the test itself.

Is this the right place to put this test? I think we want it to run on each full test run.

tests/pystone.py Outdated
IntGlob = 0
BoolGlob = FALSE
Char1Glob = '\\0'
Char2Glob = '\\0'
Copy link
Contributor Author

@patiences patiences Jun 28, 2018

These null bytes have been escaped, this is the only difference from the source.

@freakboy3742
Copy link
Member

@freakboy3742 freakboy3742 commented Jun 29, 2018

I took this branch for a spin to check the \0 change - it seemed like it wasn't necessary, and I wanted to verify for myself.

However, I'm getting problems, both running natively, and in the test suite:

$ python setup.py test -s tests.test_pystone
/Users/rkm/.pyenv/versions/3.4.6/lib/python3.4/distutils/dist.py:260: UserWarning: Unknown distribution option: 'package_urls'
  warnings.warn(msg)
running test
running egg_info
writing top-level names to voc.egg-info/top_level.txt
writing entry points to voc.egg-info/entry_points.txt
writing voc.egg-info/PKG-INFO
writing dependency_links to voc.egg-info/dependency_links.txt
reading manifest file 'voc.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching 'Makefile'
warning: no files found matching 'requirements*.txt'
warning: no files found matching '*.properties'
writing manifest file 'voc.egg-info/SOURCES.txt'
running build_ext
test_pystone (tests.test_pystone.PystoneTest) ... java.lang.VerifyError: Expecting a stackmap frame at branch target 96
Exception Details:
  Location:
    python/test.main([Ljava/lang/String;)V @4: ldc_w
  Reason:
    Expected stackmap frame at this location.
  Bytecode:
    0x0000000: 014c 014d 1302 46b3 0247 bb00 0159 b702
    0x0000010: 4d4d b200 18bb 0008 5913 001e b700 0c2c
    0x0000020: b902 1d03 00b2 0018 bb00 0859 1301 b5b7
    0x0000030: 000c 2cb9 021d 0300 2cbb 0008 5913 01b5
    0x0000040: b700 0c13 01b3 5fb9 0028 0300 2cb2 008e
    0x0000050: 1301 fd5f b900 2803 002c b602 4ea7 0009
    0x0000060: b402 50b8 0255 b1                      
  Exception Handler Table:
    bci [4, 93] => handler: 96

	at java.lang.Class.getDeclaredMethods0(Native Method)
	at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
	at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
	at java.lang.Class.getMethod0(Class.java:3018)
	at java.lang.Class.getMethod(Class.java:1784)
	at python.testdaemon.TestDaemon.main(TestDaemon.java:61)

ok

----------------------------------------------------------------------
Ran 1 test in 8.084s

OK

The test passes, but it's not actually running - it's crashing.

Are you seeing this as well?

@patiences
Copy link
Contributor Author

@patiences patiences commented Jun 30, 2018

Yes, this is because of the storing into Lists bug (fixed in PR#852). The test will not pass unless that PR is merged first

@freakboy3742
Copy link
Member

@freakboy3742 freakboy3742 commented Jul 1, 2018

/me facepalms. Of course - my apologies :-)

@patiences
Copy link
Contributor Author

@patiences patiences commented Jul 2, 2018

So, this is what the test output looks like (running python setup.py test -s tests.test_pystone):

...
test_pystone (tests.test_pystone.PystoneTest) ... Pystone(1.1) time for 50000 passes = 70.8190
This machine benchmarks at 706.025 pystones/second

ok

----------------------------------------------------------------------
Ran 1 test in 119.113s

OK

Copy link
Member

@freakboy3742 freakboy3742 left a comment

👍

@freakboy3742 freakboy3742 merged commit 19002e6 into beeware:master Jul 4, 2018
5 checks passed
@patiences patiences deleted the add-pystone branch Aug 2, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

2 participants