@matheusbsbs / matheus-bagliano / commits / 09327fd8f7
Fork 0

t1510: setup case #19

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Nguyễn Thái Ngọc Duy committed Nov 26, 2010 at 22:32 UTC 09327fd8f77cc7115684902528a5ba31bd6c5cff
1 file changed +266
t/t1510-repo-setup.sh
+266
@@ -2560,4 +2560,270 @@ EOF
2560 test_repo 18/sub "$TRASH_DIRECTORY/18/.git"
2561 '
2562
2563 +#
2564 +# case #19
2565 +#
2566 +############################################################
2567 +#
2568 +# Input:
2569 +#
2570 +# - GIT_WORK_TREE is set
2571 +# - GIT_DIR is set
2572 +# - .git is a directory
2573 +# - core.worktree is not set
2574 +# - core.bare is set
2575 +#
2576 +# Output:
2577 +#
2578 +# bare repo is overridden by GIT_WORK_TREE -> #3
2579 +
2580 +test_expect_success '#19: setup' '
2581 + unset GIT_DIR GIT_WORK_TREE &&
2582 + mkdir 19 19/sub 19/sub/sub 19.wt 19.wt/sub 19/wt 19/wt/sub &&
2583 + cd 19 &&
2584 + git init &&
2585 + git config core.bare true &&
2586 + cd ..
2587 +'
2588 +
2589 +test_expect_success '#19: GIT_DIR(rel), GIT_WORK_TREE=root at root' '
2590 + cat >19/expected <<EOF &&
2591 +setup: git_dir: .git
2592 +setup: worktree: $TRASH_DIRECTORY/19
2593 +setup: cwd: $TRASH_DIRECTORY/19
2594 +setup: prefix: (null)
2595 +EOF
2596 + test_repo 19 .git "$TRASH_DIRECTORY/19"
2597 +'
2598 +
2599 +test_expect_success '#19: GIT_DIR(rel), GIT_WORK_TREE=root(rel) at root' '
2600 + cat >19/expected <<EOF &&
2601 +setup: git_dir: .git
2602 +setup: worktree: $TRASH_DIRECTORY/19
2603 +setup: cwd: $TRASH_DIRECTORY/19
2604 +setup: prefix: (null)
2605 +EOF
2606 + test_repo 19 .git .
2607 +'
2608 +
2609 +test_expect_success '#19: GIT_DIR, GIT_WORK_TREE=root at root' '
2610 + cat >19/expected <<EOF &&
2611 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2612 +setup: worktree: $TRASH_DIRECTORY/19
2613 +setup: cwd: $TRASH_DIRECTORY/19
2614 +setup: prefix: (null)
2615 +EOF
2616 + test_repo 19 "$TRASH_DIRECTORY/19/.git" "$TRASH_DIRECTORY/19"
2617 +'
2618 +
2619 +test_expect_success '#19: GIT_DIR, GIT_WORK_TREE=root(rel) at root' '
2620 + cat >19/expected <<EOF &&
2621 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2622 +setup: worktree: $TRASH_DIRECTORY/19
2623 +setup: cwd: $TRASH_DIRECTORY/19
2624 +setup: prefix: (null)
2625 +EOF
2626 + test_repo 19 "$TRASH_DIRECTORY/19/.git" .
2627 +'
2628 +
2629 +test_expect_success '#19: GIT_DIR(rel), GIT_WORKTREE=root in subdir' '
2630 + cat >19/sub/sub/expected <<EOF &&
2631 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2632 +setup: worktree: $TRASH_DIRECTORY/19
2633 +setup: cwd: $TRASH_DIRECTORY/19
2634 +setup: prefix: sub/sub/
2635 +EOF
2636 + test_repo 19/sub/sub ../../.git "$TRASH_DIRECTORY/19"
2637 +'
2638 +
2639 +test_expect_success '#19: GIT_DIR(rel), GIT_WORKTREE=root(rel) in subdir' '
2640 + cat >19/sub/sub/expected <<EOF &&
2641 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2642 +setup: worktree: $TRASH_DIRECTORY/19
2643 +setup: cwd: $TRASH_DIRECTORY/19
2644 +setup: prefix: sub/sub/
2645 +EOF
2646 + test_repo 19/sub/sub ../../.git ../..
2647 +'
2648 +
2649 +test_expect_success '#19: GIT_DIR, GIT_WORKTREE=root in subdir' '
2650 + cat >19/sub/expected <<EOF &&
2651 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2652 +setup: worktree: $TRASH_DIRECTORY/19
2653 +setup: cwd: $TRASH_DIRECTORY/19
2654 +setup: prefix: sub/
2655 +EOF
2656 + test_repo 19/sub "$TRASH_DIRECTORY/19/.git" "$TRASH_DIRECTORY/19"
2657 +'
2658 +
2659 +test_expect_success '#19: GIT_DIR, GIT_WORKTREE=root(rel) in subdir' '
2660 + cat >19/sub/sub/expected <<EOF &&
2661 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2662 +setup: worktree: $TRASH_DIRECTORY/19
2663 +setup: cwd: $TRASH_DIRECTORY/19
2664 +setup: prefix: sub/sub/
2665 +EOF
2666 + test_repo 19/sub/sub "$TRASH_DIRECTORY/19/.git" ../..
2667 +'
2668 +
2669 +test_expect_success '#19: GIT_DIR(rel), GIT_WORK_TREE=wt at root' '
2670 + cat >19/expected <<EOF &&
2671 +setup: git_dir: .git
2672 +setup: worktree: $TRASH_DIRECTORY/19/wt
2673 +setup: cwd: $TRASH_DIRECTORY/19
2674 +setup: prefix: (null)
2675 +EOF
2676 + test_repo 19 .git "$TRASH_DIRECTORY/19/wt"
2677 +'
2678 +
2679 +test_expect_success '#19: GIT_DIR(rel), GIT_WORK_TREE=wt(rel) at root' '
2680 + cat >19/expected <<EOF &&
2681 +setup: git_dir: .git
2682 +setup: worktree: $TRASH_DIRECTORY/19/wt
2683 +setup: cwd: $TRASH_DIRECTORY/19
2684 +setup: prefix: (null)
2685 +EOF
2686 + test_repo 19 .git wt
2687 +'
2688 +
2689 +test_expect_success '#19: GIT_DIR, GIT_WORK_TREE=wt(rel) at root' '
2690 + cat >19/expected <<EOF &&
2691 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2692 +setup: worktree: $TRASH_DIRECTORY/19/wt
2693 +setup: cwd: $TRASH_DIRECTORY/19
2694 +setup: prefix: (null)
2695 +EOF
2696 + test_repo 19 "$TRASH_DIRECTORY/19/.git" wt
2697 +'
2698 +
2699 +test_expect_success '#19: GIT_DIR, GIT_WORK_TREE=wt at root' '
2700 + cat >19/expected <<EOF &&
2701 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2702 +setup: worktree: $TRASH_DIRECTORY/19/wt
2703 +setup: cwd: $TRASH_DIRECTORY/19
2704 +setup: prefix: (null)
2705 +EOF
2706 + test_repo 19 "$TRASH_DIRECTORY/19/.git" "$TRASH_DIRECTORY/19/wt"
2707 +'
2708 +
2709 +test_expect_success '#19: GIT_DIR(rel), GIT_WORK_TREE=wt in subdir' '
2710 + cat >19/sub/sub/expected <<EOF &&
2711 +setup: git_dir: ../../.git
2712 +setup: worktree: $TRASH_DIRECTORY/19/wt
2713 +setup: cwd: $TRASH_DIRECTORY/19/sub/sub
2714 +setup: prefix: (null)
2715 +EOF
2716 + test_repo 19/sub/sub ../../.git "$TRASH_DIRECTORY/19/wt"
2717 +'
2718 +
2719 +test_expect_success '#19: GIT_DIR(rel), GIT_WORK_TREE=wt(rel) in subdir' '
2720 + cat >19/sub/sub/expected <<EOF &&
2721 +setup: git_dir: ../../.git
2722 +setup: worktree: $TRASH_DIRECTORY/19/wt
2723 +setup: cwd: $TRASH_DIRECTORY/19/sub/sub
2724 +setup: prefix: (null)
2725 +EOF
2726 + test_repo 19/sub/sub ../../.git ../../wt
2727 +'
2728 +
2729 +test_expect_success '#19: GIT_DIR, GIT_WORK_TREE=wt(rel) in subdir' '
2730 + cat >19/sub/sub/expected <<EOF &&
2731 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2732 +setup: worktree: $TRASH_DIRECTORY/19/wt
2733 +setup: cwd: $TRASH_DIRECTORY/19/sub/sub
2734 +setup: prefix: (null)
2735 +EOF
2736 + test_repo 19/sub/sub "$TRASH_DIRECTORY/19/.git" ../../wt
2737 +'
2738 +
2739 +test_expect_success '#19: GIT_DIR, GIT_WORK_TREE=wt in subdir' '
2740 + cat >19/sub/sub/expected <<EOF &&
2741 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2742 +setup: worktree: $TRASH_DIRECTORY/19/wt
2743 +setup: cwd: $TRASH_DIRECTORY/19/sub/sub
2744 +setup: prefix: (null)
2745 +EOF
2746 + test_repo 19/sub/sub "$TRASH_DIRECTORY/19/.git" "$TRASH_DIRECTORY/19/wt"
2747 +'
2748 +
2749 +test_expect_success '#19: GIT_DIR(rel), GIT_WORK_TREE=.. at root' '
2750 + cat >19/expected <<EOF &&
2751 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2752 +setup: worktree: $TRASH_DIRECTORY
2753 +setup: cwd: $TRASH_DIRECTORY
2754 +setup: prefix: 19/
2755 +EOF
2756 + test_repo 19 .git "$TRASH_DIRECTORY"
2757 +'
2758 +
2759 +test_expect_success '#19: GIT_DIR(rel), GIT_WORK_TREE=..(rel) at root' '
2760 + cat >19/expected <<EOF &&
2761 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2762 +setup: worktree: $TRASH_DIRECTORY
2763 +setup: cwd: $TRASH_DIRECTORY
2764 +setup: prefix: 19/
2765 +EOF
2766 + test_repo 19 .git ..
2767 +'
2768 +
2769 +test_expect_success '#19: GIT_DIR, GIT_WORK_TREE=..(rel) at root' '
2770 + cat >19/expected <<EOF &&
2771 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2772 +setup: worktree: $TRASH_DIRECTORY
2773 +setup: cwd: $TRASH_DIRECTORY
2774 +setup: prefix: 19/
2775 +EOF
2776 + test_repo 19 "$TRASH_DIRECTORY/19/.git" ..
2777 +'
2778 +
2779 +test_expect_success '#19: GIT_DIR, GIT_WORK_TREE=.. at root' '
2780 + cat >19/expected <<EOF &&
2781 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2782 +setup: worktree: $TRASH_DIRECTORY
2783 +setup: cwd: $TRASH_DIRECTORY
2784 +setup: prefix: 19/
2785 +EOF
2786 + test_repo 19 "$TRASH_DIRECTORY/19/.git" "$TRASH_DIRECTORY"
2787 +'
2788 +
2789 +test_expect_success '#19: GIT_DIR(rel), GIT_WORK_TREE=.. in subdir' '
2790 + cat >19/sub/sub/expected <<EOF &&
2791 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2792 +setup: worktree: $TRASH_DIRECTORY
2793 +setup: cwd: $TRASH_DIRECTORY
2794 +setup: prefix: 19/sub/sub/
2795 +EOF
2796 + test_repo 19/sub/sub ../../.git "$TRASH_DIRECTORY"
2797 +'
2798 +
2799 +test_expect_success '#19: GIT_DIR(rel), GIT_WORK_TREE=..(rel) in subdir' '
2800 + cat >19/sub/sub/expected <<EOF &&
2801 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2802 +setup: worktree: $TRASH_DIRECTORY
2803 +setup: cwd: $TRASH_DIRECTORY
2804 +setup: prefix: 19/sub/sub/
2805 +EOF
2806 + test_repo 19/sub/sub ../../.git ../../..
2807 +'
2808 +
2809 +test_expect_success '#19: GIT_DIR, GIT_WORK_TREE=..(rel) in subdir' '
2810 + cat >19/sub/sub/expected <<EOF &&
2811 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2812 +setup: worktree: $TRASH_DIRECTORY
2813 +setup: cwd: $TRASH_DIRECTORY
2814 +setup: prefix: 19/sub/sub/
2815 +EOF
2816 + test_repo 19/sub/sub "$TRASH_DIRECTORY/19/.git" ../../../
2817 +'
2818 +
2819 +test_expect_success '#19: GIT_DIR, GIT_WORK_TREE=.. in subdir' '
2820 + cat >19/sub/sub/expected <<EOF &&
2821 +setup: git_dir: $TRASH_DIRECTORY/19/.git
2822 +setup: worktree: $TRASH_DIRECTORY
2823 +setup: cwd: $TRASH_DIRECTORY
2824 +setup: prefix: 19/sub/sub/
2825 +EOF
2826 + test_repo 19/sub/sub "$TRASH_DIRECTORY/19/.git" "$TRASH_DIRECTORY"
2827 +'
2828 +
2829 test_done