mirror of
https://github.com/pezkuwichain/revive-differential-tests.git
synced 2026-04-25 15:08:00 +00:00
60 lines
1.5 KiB
Bash
Executable File
60 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Revive Differential Tests - Quick Start Script
|
|
# This script clones the test repository, sets up the corpus file, and runs the tool
|
|
|
|
set -e # Exit on any error
|
|
|
|
# Colors for output
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
NC='\033[0m' # No Color
|
|
|
|
# Configuration
|
|
TEST_REPO_URL="https://github.com/paritytech/resolc-compiler-tests"
|
|
TEST_REPO_DIR="resolc-compiler-tests"
|
|
CORPUS_FILE="./corpus.json"
|
|
WORKDIR="workdir"
|
|
|
|
echo -e "${GREEN}=== Revive Differential Tests Quick Start ===${NC}"
|
|
echo ""
|
|
|
|
# Check if test repo already exists
|
|
if [ -d "$TEST_REPO_DIR" ]; then
|
|
echo -e "${YELLOW}Test repository already exists. Pulling latest changes...${NC}"
|
|
cd "$TEST_REPO_DIR"
|
|
git pull
|
|
cd ..
|
|
else
|
|
echo -e "${GREEN}Cloning test repository...${NC}"
|
|
git clone "$TEST_REPO_URL"
|
|
fi
|
|
|
|
# Create corpus file with absolute path resolved at runtime
|
|
echo -e "${GREEN}Creating corpus file...${NC}"
|
|
ABSOLUTE_PATH=$(realpath "$TEST_REPO_DIR/fixtures/solidity/")
|
|
|
|
cat > "$CORPUS_FILE" << EOF
|
|
{
|
|
"name": "MatterLabs Solidity Simple, Complex, and Semantic Tests",
|
|
"path": "$ABSOLUTE_PATH"
|
|
}
|
|
EOF
|
|
|
|
echo -e "${GREEN}Corpus file created: $CORPUS_FILE${NC}"
|
|
|
|
# Create workdir if it doesn't exist
|
|
mkdir -p "$WORKDIR"
|
|
|
|
echo -e "${GREEN}Starting differential tests...${NC}"
|
|
echo "This may take a while..."
|
|
echo ""
|
|
|
|
# Run the tool
|
|
RUST_LOG="error" cargo run --release -- \
|
|
--corpus "$CORPUS_FILE" \
|
|
--workdir "$WORKDIR" \
|
|
--number-of-nodes 5
|
|
|
|
echo -e "${GREEN}=== Test run completed! ===${NC}" |