phoe / protest Goto Github PK
View Code? Open in Web Editor NEWPROtocol and TESTcase manager
License: Other
PROtocol and TESTcase manager
License: Other
in src/base/package.lisp it uses both common-lisp and closer-mop, which create various clashes. It tries to get over it by using :shadowing-import-from, but because closer-mop either import from the implementation or create new symbols in some cases, it doesn't work form all implementations. The current version errors on LispWorks because both closer-mop and common-lisp export standard-class.
uiop:define-package has a keyword :mix that can be used instead of :use to cope with these situations. Just change the :use to :mix fixes the problem, and it can run the 1am tests successfully.
Could be used more commonly if it was in the QL!
Currently, PROTEST/BASE:DEFINE-PROTOCOL-CLASS
defines a method on INITIALIZE-INSTANCE
. This is buggy, since this means that it is still possible to create instances of the protocol class by e.g. using CHANGE-CLASS
. This means that, in the future, DEFINE-PROTOCOL-CLASS
will also define methods on UPDATE-INSTANCE-FOR-REDEFINED-CLASS
to prevent such.
This issue is a warning to all clients of this method to ensure that they do not have. It's unlikely to have them, since changing classes to/from protocol classes is a weird thing to do, but I nonetheless post this here.
We can now relicense PROTEST/PARACHUTE
from Artistic.
there is no :function option any more!
in src/base/base.lisp, remove-protocol-object ** needs to pass '(:around) tofind-method** with #'initialize-instance, to match what define-protocol-object does.
It gives an error when quikcloadloading "protest/test-case" and calling (protest/test:run-all-tests). With this change (protest/test:run-all-tests) it runs successfully.
in src/parachute/test.lisp, it has a form (fail :failure)
, which doesn't give the expected result, because fail in parachute expects the form it takes to invoke error. In the bottom the file there is an output of running the tests showing this test fails.
It should take a form that invokes error, for example (fail (* 3 :a))
.
Inside test cases, we could allow string designators instead of strings for descriptions. That would have an unfortunate effect of possibly interning some symbols, unless we do #:|...|
which is fine too.
It is fairly common to construct extended protocol based upon existing ones. It would be therefore useful to be able to specify :includes option for protocol.
If a test case does not exist but a test does, we don't need to prevent the test from being defined and/or executed.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.