mirror of
https://github.com/cloud-shuttle/leptos-shadcn-ui.git
synced 2025-12-23 06:10:01 +00:00
135 lines
4.0 KiB
Bash
Executable File
135 lines
4.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Test script for Dialog component
|
|
# This script tests the Dialog component for both Yew and Leptos frameworks
|
|
|
|
set -e
|
|
|
|
echo "🎯 Testing Dialog Component"
|
|
echo "=========================="
|
|
|
|
# Colors for output
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
BLUE='\033[0;34m'
|
|
NC='\033[0m' # No Color
|
|
|
|
# Function to print colored output
|
|
print_status() {
|
|
echo -e "${BLUE}[INFO]${NC} $1"
|
|
}
|
|
|
|
print_success() {
|
|
echo -e "${GREEN}[SUCCESS]${NC} $1"
|
|
}
|
|
|
|
print_warning() {
|
|
echo -e "${YELLOW}[WARNING]${NC} $1"
|
|
}
|
|
|
|
print_error() {
|
|
echo -e "${RED}[ERROR]${NC} $1"
|
|
}
|
|
|
|
# Test counter
|
|
TESTS_PASSED=0
|
|
TESTS_FAILED=0
|
|
|
|
# Function to run a test
|
|
run_test() {
|
|
local test_name="$1"
|
|
local test_command="$2"
|
|
|
|
print_status "Running: $test_name"
|
|
|
|
if eval "$test_command"; then
|
|
print_success "$test_name passed"
|
|
((TESTS_PASSED++))
|
|
else
|
|
print_error "$test_name failed"
|
|
((TESTS_FAILED++))
|
|
fi
|
|
echo
|
|
}
|
|
|
|
echo "🔧 Testing Yew Dialog Component"
|
|
echo "-------------------------------"
|
|
|
|
# Test Yew Dialog component compilation
|
|
run_test "Yew Dialog Component Check" "cargo check -p shadcn-ui-yew-dialog"
|
|
|
|
# Test Yew Dialog component tests
|
|
run_test "Yew Dialog Component Tests" "cargo test -p shadcn-ui-yew-dialog --lib"
|
|
|
|
# Test Yew Dialog component build
|
|
run_test "Yew Dialog Component Build" "cargo build -p shadcn-ui-yew-dialog --release"
|
|
|
|
# Test Yew Dialog component in book examples
|
|
run_test "Yew Dialog Book Integration" "cd book-examples/yew && cargo check --features dialog"
|
|
|
|
echo "🔧 Testing Leptos Dialog Component"
|
|
echo "----------------------------------"
|
|
|
|
# Test Leptos Dialog component compilation (if it exists)
|
|
if [ -d "packages/leptos/dialog" ]; then
|
|
run_test "Leptos Dialog Component Check" "cargo check -p shadcn-ui-leptos-dialog"
|
|
run_test "Leptos Dialog Component Tests" "cargo test -p shadcn-ui-leptos-dialog --lib"
|
|
run_test "Leptos Dialog Component Build" "cargo build -p shadcn-ui-leptos-dialog --release"
|
|
else
|
|
print_warning "Leptos Dialog component not found - skipping Leptos tests"
|
|
fi
|
|
|
|
echo "🔧 Testing Dialog Component Integration"
|
|
echo "--------------------------------------"
|
|
|
|
# Test workspace compilation with dialog (skip problematic components)
|
|
run_test "Workspace with Dialog Check" "cargo check -p shadcn-ui-yew-dialog -p shadcn-ui-yew-radio-group -p shadcn-ui-yew-button -p shadcn-ui-yew-card -p shadcn-ui-yew-alert -p shadcn-ui-yew-badge -p shadcn-ui-yew-input -p shadcn-ui-yew-label -p shadcn-ui-yew-textarea -p shadcn-ui-yew-switch -p shadcn-ui-yew-table -p shadcn-ui-yew-skeleton -p shadcn-ui-yew-separator -p shadcn-ui-yew-pagination -p shadcn-ui-yew-breadcrumb -p shadcn-ui-yew-avatar -p shadcn-ui-yew-aspect-ratio"
|
|
|
|
# Test dialog component in registry
|
|
run_test "Dialog Registry Integration" "cargo check -p shadcn-registry"
|
|
|
|
echo "🔧 Testing Dialog Component Documentation"
|
|
echo "----------------------------------------"
|
|
|
|
# Check if dialog documentation exists
|
|
if [ -f "packages/yew/dialog/README.md" ]; then
|
|
print_success "Dialog README documentation exists"
|
|
((TESTS_PASSED++))
|
|
else
|
|
print_warning "Dialog README documentation missing"
|
|
fi
|
|
|
|
# Check if dialog is in main README
|
|
if [ -f "README.md" ] && grep -q "dialog" README.md; then
|
|
print_success "Dialog component mentioned in main README"
|
|
((TESTS_PASSED++))
|
|
else
|
|
print_warning "Dialog component not mentioned in main README"
|
|
fi
|
|
|
|
echo "🔧 Testing Dialog Component Examples"
|
|
echo "-----------------------------------"
|
|
|
|
# Test dialog examples in book
|
|
if [ -f "book-examples/yew/src/default/dialog/dialog.rs" ]; then
|
|
print_success "Dialog examples exist in Yew book"
|
|
((TESTS_PASSED++))
|
|
else
|
|
print_warning "Dialog examples missing in Yew book"
|
|
fi
|
|
|
|
echo "📊 Test Results Summary"
|
|
echo "======================"
|
|
echo "Tests Passed: $TESTS_PASSED"
|
|
echo "Tests Failed: $TESTS_FAILED"
|
|
echo "Total Tests: $((TESTS_PASSED + TESTS_FAILED))"
|
|
|
|
if [ $TESTS_FAILED -eq 0 ]; then
|
|
print_success "🎉 All Dialog component tests passed!"
|
|
exit 0
|
|
else
|
|
print_error "❌ Some Dialog component tests failed!"
|
|
exit 1
|
|
fi
|