-
Notifications
You must be signed in to change notification settings - Fork 81
Bayou Binary 1.0.x Release Criteria
Ensure expected file name.
Ensure that top level directory contents are as expected.
Method
$ unzip bayou-1.0.0.zip
$ rm bayou-1.0.0.zip
$ find . -maxdepth 1 -name bayou-1.0.0.jar -o -name example_inputs -o -name install_dependencies_apt.sh -o -name install_dependencies_mac.sh -o -name python -o -name resources -o -name start_bayou.sh -o -name synthesize.sh | wc -l
Assert value is 8.
$ ls | wc -l
Assert value is 8.
Ensure dependency scripts install required packages on both Linux and Mac.
Method
sudo ./install_dependencies_apt.sh
Assert no error messages displayed.
sudo ./install_dependencies_mac.sh
Assert no error messages displayed.
Ensure Bayou can launch as a background process.
Method
$ ./start_bayou.sh &
Assert output concludes with
===================================
Bayou Ready
===================================
Ensure no-arg synthesize.sh
invocation produces non-empty result.
Method
$ ./synthesize.sh
Assert displayed result contains at least one program.
Ensure each example input program ./synthesis
invocation produces non-empty result.
Method
$ ./synthesize.sh example_inputs/TestBluetooth.java
Assert displayed result contains at least one program.
$ ./synthesize.sh example_inputs/TestCamera.java
Assert displayed result contains at least one program.
$ ./synthesize.sh example_inputs/TestDialog.java
Assert displayed result contains at least one program.
$ ./synthesize.sh example_inputs/TestIO.java
Assert displayed result contains at least one program.
$ ./synthesize.sh example_inputs/TestSpeech.java
Assert displayed result contains at least one program.
$ ./synthesize.sh example_inputs/TestWifi.java
Assert displayed result contains at least one program.
Ensure ./sythnesize.sh --help
produces the correct output
Method
$ ./synthesize.sh --help
Assert output is:
usage: synthesize.sh [OPTION]... [FILE]
-help,--help print this message
-p,--num_programs <arg> the maximum number of programs to return
-s,--num_samples <arg> the number of asts to sample from the model
Ensure Java and Python processes writing to log files.
Method
$ grep INFO ./logs/ApiSynthesisServer.log
Assert result is non-empty.
$ grep INFO ./logs/ast_server.log
Assert result is non-empty.
Ensure Bayou can be stopped.
Method
$ fg
./start_bayou.sh
$ ^C
<output>
$ ps aux | grep python
Assert ast_server
Python process not running.
$ ps aux | grep java
Assert ApiSynthesisServer
Java process not running.