-
-
Notifications
You must be signed in to change notification settings - Fork 329
Expand file tree
/
Copy pathMakefile
More file actions
58 lines (48 loc) · 1.67 KB
/
Makefile
File metadata and controls
58 lines (48 loc) · 1.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# Shimmy Development Makefile
# Provides convenient commands for testing, building, and releasing
.PHONY: test test-cached build install clean release help
# Default target
help:
@echo "Shimmy Development Commands:"
@echo " make test - Run full test suite with CI cache integration"
@echo " make test-quick - Run basic tests only"
@echo " make build - Build shimmy binary"
@echo " make install - Install shimmy locally"
@echo " make clean - Clean build artifacts"
@echo " make release - Create release build"
@echo " make fmt - Format code"
@echo " make lint - Run clippy lints"
# Full test suite
test:
@echo "🧪 Running Shimmy Test Suite"
@echo "📋 Running PPT Contract Tests..."
cargo test --lib --features llama ppt -- --test-threads=1 --nocapture
@echo "📋 Running Property Tests..."
cargo test property_tests --no-default-features --features huggingface -- --nocapture
@echo "📋 Running Unit Tests (HuggingFace)..."
cargo test --lib --no-default-features --features huggingface --verbose
@echo "📋 Running Unit Tests (All Features)..."
cargo test --lib --all-features --verbose
@echo "✅ All tests passed locally!"
# Quick tests for development
test-quick:
@echo "🚀 Running quick tests..."
cargo test --lib --features huggingface
# Build commands
build:
cargo build --release --all-features
install:
cargo install --path . --all-features
clean:
cargo clean
rm -rf .test-cache
# Code quality
fmt:
cargo fmt
lint:
cargo clippy --all-features -- -D warnings
# Release build
release:
@echo "🚀 Creating release build..."
cargo build --release --all-features
@echo "✅ Release binary: target/release/shimmy"