Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test server and base case #17

Merged
merged 12 commits into from Sep 9, 2013
Merged

Test server and base case #17

merged 12 commits into from Sep 9, 2013

Conversation

umazalakain
Copy link
Collaborator

Base test case that executes every test on remote and local URLs:

  • executes on remote only if remote is available.
  • executes always on a local bottle server that returns predownloaded original responses.

@karan
Copy link
Owner

karan commented Sep 7, 2013

Can you update the readme file with: what the tests do, how to run them etc?

Also, whatever happened to #15 (comment)

karan pushed a commit that referenced this pull request Sep 9, 2013
Test server and base case
@karan karan merged commit 2972d5a into karan:master Sep 9, 2013
@karan
Copy link
Owner

karan commented Sep 9, 2013

C:\Users\Karan\Desktop\Dropbox\Codebase\Python\TPB [master +0 ~2 -0]> python .\tests\tests.py
EE
======================================================================
ERROR: setUpClass (__main__.ParsingTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\Karan\Desktop\Dropbox\Codebase\Python\TPB\tests\cases.py", line 47, in setUpClass
    cls.server.start()
  File "C:\Users\Karan\Desktop\Dropbox\Codebase\Python\TPB\tests\server.py", line 36, in start
    self.process.start()
  File "c:\python27\lib\multiprocessing\process.py", line 130, in start
    self._popen = Popen(self)
  File "c:\python27\lib\multiprocessing\forking.py", line 277, in __init__
    dump(process_obj, to_child, HIGHEST_PROTOCOL)
  File "c:\python27\lib\multiprocessing\forking.py", line 199, in dump
    ForkingPickler(file, protocol).dump(obj)
  File "c:\python27\lib\pickle.py", line 224, in dump
    self.save(obj)
  File "c:\python27\lib\pickle.py", line 331, in save
    self.save_reduce(obj=obj, *rv)
  File "c:\python27\lib\pickle.py", line 419, in save_reduce
    save(state)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 649, in save_dict
    self._batch_setitems(obj.iteritems())
  File "c:\python27\lib\pickle.py", line 681, in _batch_setitems
    save(v)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\multiprocessing\forking.py", line 67, in dispatcher
    self.save_reduce(obj=obj, *rv)
  File "c:\python27\lib\pickle.py", line 401, in save_reduce
    save(args)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 548, in save_tuple
    save(element)
  File "c:\python27\lib\pickle.py", line 331, in save
    self.save_reduce(obj=obj, *rv)
  File "c:\python27\lib\pickle.py", line 419, in save_reduce
    save(state)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 649, in save_dict
    self._batch_setitems(obj.iteritems())
  File "c:\python27\lib\pickle.py", line 681, in _batch_setitems
    save(v)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 600, in save_list
    self._batch_appends(iter(obj))
  File "c:\python27\lib\pickle.py", line 633, in _batch_appends
    save(x)
  File "c:\python27\lib\pickle.py", line 331, in save
    self.save_reduce(obj=obj, *rv)
  File "c:\python27\lib\pickle.py", line 419, in save_reduce
    save(state)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 649, in save_dict
    self._batch_setitems(obj.iteritems())
  File "c:\python27\lib\pickle.py", line 681, in _batch_setitems
    save(v)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 748, in save_global
    (obj, module, name))
PicklingError: Can't pickle <function <lambda> at 0x02991430>: it's not found as server.<lambda>

======================================================================
ERROR: setUpClass (__main__.PathSegmentsTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\Karan\Desktop\Dropbox\Codebase\Python\TPB\tests\cases.py", line 47, in setUpClass
    cls.server.start()
  File "C:\Users\Karan\Desktop\Dropbox\Codebase\Python\TPB\tests\server.py", line 36, in start
    self.process.start()
  File "c:\python27\lib\multiprocessing\process.py", line 130, in start
    self._popen = Popen(self)
  File "c:\python27\lib\multiprocessing\forking.py", line 277, in __init__
    dump(process_obj, to_child, HIGHEST_PROTOCOL)
  File "c:\python27\lib\multiprocessing\forking.py", line 199, in dump
    ForkingPickler(file, protocol).dump(obj)
  File "c:\python27\lib\pickle.py", line 224, in dump
    self.save(obj)
  File "c:\python27\lib\pickle.py", line 331, in save
    self.save_reduce(obj=obj, *rv)
  File "c:\python27\lib\pickle.py", line 419, in save_reduce
    save(state)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 649, in save_dict
    self._batch_setitems(obj.iteritems())
  File "c:\python27\lib\pickle.py", line 681, in _batch_setitems
    save(v)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\multiprocessing\forking.py", line 67, in dispatcher
    self.save_reduce(obj=obj, *rv)
  File "c:\python27\lib\pickle.py", line 401, in save_reduce
    save(args)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 548, in save_tuple
    save(element)
  File "c:\python27\lib\pickle.py", line 331, in save
    self.save_reduce(obj=obj, *rv)
  File "c:\python27\lib\pickle.py", line 419, in save_reduce
    save(state)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 649, in save_dict
    self._batch_setitems(obj.iteritems())
  File "c:\python27\lib\pickle.py", line 681, in _batch_setitems
    save(v)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 600, in save_list
    self._batch_appends(iter(obj))
  File "c:\python27\lib\pickle.py", line 633, in _batch_appends
    save(x)
  File "c:\python27\lib\pickle.py", line 331, in save
    self.save_reduce(obj=obj, *rv)
  File "c:\python27\lib\pickle.py", line 419, in save_reduce
    save(state)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 649, in save_dict
    self._batch_setitems(obj.iteritems())
  File "c:\python27\lib\pickle.py", line 681, in _batch_setitems
    save(v)
  File "c:\python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "c:\python27\lib\pickle.py", line 748, in save_global
    (obj, module, name))
PicklingError: Can't pickle <function <lambda> at 0x029AFC70>: it's not found as server.<lambda>

----------------------------------------------------------------------
Ran 0 tests in 0.015s

FAILED (errors=2)
C:\Users\Karan\Desktop\Dropbox\Codebase\Python\TPB [master +0 ~2 -0]> Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "c:\python27\lib\multiprocessing\forking.py", line 381, in main
Traceback (most recent call last):
      File "<string>", line 1, in <module>
self = load(from_parent)
  File "c:\python27\lib\multiprocessing\forking.py", line 381, in main
  File "c:\python27\lib\pickle.py", line 1378, in load
    self = load(from_parent)
  File "c:\python27\lib\pickle.py", line 1378, in load
        return Unpickler(file).load()
return Unpickler(file).load()
  File "c:\python27\lib\pickle.py", line 858, in load
  File "c:\python27\lib\pickle.py", line 858, in load
        dispatch[key](self)
dispatch[key](self)
  File "c:\python27\lib\pickle.py", line 880, in load_eof
  File "c:\python27\lib\pickle.py", line 880, in load_eof
    raise EOFError
    EOFErrorraise EOFError

EOFError

Pretty sure this is not the desired output.

If all the tests pass, and #15 (comment) is fixed, I'll bump TPB to v1.0.0 stable.

@umazalakain
Copy link
Collaborator Author

Pickle & Windows issue, can not help, sorry :-/

https://gisa-elkartea.org/

@karan
Copy link
Owner

karan commented Sep 9, 2013

Service Temporarily Unavailable

The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.

Can you at least let m know why the error(s). Why can look for alternatives, because having a cross-platform API would be ideal.

@umazalakain
Copy link
Collaborator Author

I once read that python 4 windows was having problems with pickle. It's notthong TPB related.

The exception is most surely raised by bottle trying to pickle http requests.

I think I once read about it but I don't remember the solution, sorry.

https://gisa-elkartea.org/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants