456 > # wc: file exist with a content different from base and parent |
456 > # wc: file exist with a content different from base and parent |
457 > 'wc': lambda cc: 'wc', |
457 > 'wc': lambda cc: 'wc', |
458 > # removed: file is missing and marked as untracked |
458 > # removed: file is missing and marked as untracked |
459 > 'removed': lambda cc: None, |
459 > 'removed': lambda cc: None, |
460 > } |
460 > } |
|
461 > # untracked-X is a version of X where the file is not tracked (? unknown) |
|
462 > wccontent['untracked-clean'] = wccontent['clean'] |
461 > |
463 > |
462 > # build the combination of possible states |
464 > # build the combination of possible states |
463 > combination = [] |
465 > combination = [] |
464 > for ctxkey in ctxcontent: |
466 > for ctxkey in ctxcontent: |
465 > for wckey in wccontent: |
467 > for wckey in wccontent: |
548 $ python ../gen-revert-cases.py base |
555 $ python ../gen-revert-cases.py base |
549 $ hg addremove --similarity 0 |
556 $ hg addremove --similarity 0 |
550 adding clean_clean |
557 adding clean_clean |
551 adding clean_removed |
558 adding clean_removed |
552 adding clean_revert |
559 adding clean_revert |
|
560 adding clean_untracked-clean |
553 adding clean_wc |
561 adding clean_wc |
554 adding modified_clean |
562 adding modified_clean |
555 adding modified_removed |
563 adding modified_removed |
556 adding modified_revert |
564 adding modified_revert |
|
565 adding modified_untracked-clean |
557 adding modified_wc |
566 adding modified_wc |
558 adding removed_clean |
567 adding removed_clean |
559 adding removed_removed |
568 adding removed_removed |
560 adding removed_revert |
569 adding removed_revert |
|
570 adding removed_untracked-clean |
561 adding removed_wc |
571 adding removed_wc |
562 $ hg status |
572 $ hg status |
563 A clean_clean |
573 A clean_clean |
564 A clean_removed |
574 A clean_removed |
565 A clean_revert |
575 A clean_revert |
|
576 A clean_untracked-clean |
566 A clean_wc |
577 A clean_wc |
567 A modified_clean |
578 A modified_clean |
568 A modified_removed |
579 A modified_removed |
569 A modified_revert |
580 A modified_revert |
|
581 A modified_untracked-clean |
570 A modified_wc |
582 A modified_wc |
571 A removed_clean |
583 A removed_clean |
572 A removed_removed |
584 A removed_removed |
573 A removed_revert |
585 A removed_revert |
|
586 A removed_untracked-clean |
574 A removed_wc |
587 A removed_wc |
575 $ hg commit -m 'base' |
588 $ hg commit -m 'base' |
576 |
589 |
577 (create a simple text version of the content) |
590 (create a simple text version of the content) |
578 |
591 |
579 $ python ../dircontent.py > ../content-base.txt |
592 $ python ../dircontent.py > ../content-base.txt |
580 $ cat ../content-base.txt |
593 $ cat ../content-base.txt |
581 base clean_clean |
594 base clean_clean |
582 base clean_removed |
595 base clean_removed |
583 base clean_revert |
596 base clean_revert |
|
597 base clean_untracked-clean |
584 base clean_wc |
598 base clean_wc |
585 base modified_clean |
599 base modified_clean |
586 base modified_removed |
600 base modified_removed |
587 base modified_revert |
601 base modified_revert |
|
602 base modified_untracked-clean |
588 base modified_wc |
603 base modified_wc |
589 base removed_clean |
604 base removed_clean |
590 base removed_removed |
605 base removed_removed |
591 base removed_revert |
606 base removed_revert |
|
607 base removed_untracked-clean |
592 base removed_wc |
608 base removed_wc |
593 |
609 |
594 Create parent changeset |
610 Create parent changeset |
595 |
611 |
596 $ python ../gen-revert-cases.py parent |
612 $ python ../gen-revert-cases.py parent |
597 $ hg addremove --similarity 0 |
613 $ hg addremove --similarity 0 |
598 adding added_clean |
614 adding added_clean |
599 adding added_removed |
615 adding added_removed |
600 adding added_revert |
616 adding added_revert |
|
617 adding added_untracked-clean |
601 adding added_wc |
618 adding added_wc |
602 removing removed_clean |
619 removing removed_clean |
603 removing removed_removed |
620 removing removed_removed |
604 removing removed_revert |
621 removing removed_revert |
|
622 removing removed_untracked-clean |
605 removing removed_wc |
623 removing removed_wc |
606 $ hg status |
624 $ hg status |
607 M modified_clean |
625 M modified_clean |
608 M modified_removed |
626 M modified_removed |
609 M modified_revert |
627 M modified_revert |
|
628 M modified_untracked-clean |
610 M modified_wc |
629 M modified_wc |
611 A added_clean |
630 A added_clean |
612 A added_removed |
631 A added_removed |
613 A added_revert |
632 A added_revert |
|
633 A added_untracked-clean |
614 A added_wc |
634 A added_wc |
615 R removed_clean |
635 R removed_clean |
616 R removed_removed |
636 R removed_removed |
617 R removed_revert |
637 R removed_revert |
|
638 R removed_untracked-clean |
618 R removed_wc |
639 R removed_wc |
619 $ hg commit -m 'parent' |
640 $ hg commit -m 'parent' |
620 |
641 |
621 (create a simple text version of the content) |
642 (create a simple text version of the content) |
622 |
643 |
623 $ python ../dircontent.py > ../content-parent.txt |
644 $ python ../dircontent.py > ../content-parent.txt |
624 $ cat ../content-parent.txt |
645 $ cat ../content-parent.txt |
625 parent added_clean |
646 parent added_clean |
626 parent added_removed |
647 parent added_removed |
627 parent added_revert |
648 parent added_revert |
|
649 parent added_untracked-clean |
628 parent added_wc |
650 parent added_wc |
629 base clean_clean |
651 base clean_clean |
630 base clean_removed |
652 base clean_removed |
631 base clean_revert |
653 base clean_revert |
|
654 base clean_untracked-clean |
632 base clean_wc |
655 base clean_wc |
633 parent modified_clean |
656 parent modified_clean |
634 parent modified_removed |
657 parent modified_removed |
635 parent modified_revert |
658 parent modified_revert |
|
659 parent modified_untracked-clean |
636 parent modified_wc |
660 parent modified_wc |
637 |
661 |
638 Setup working directory |
662 Setup working directory |
639 |
663 |
640 $ python ../gen-revert-cases.py wc | cat |
664 $ python ../gen-revert-cases.py wc | cat |
644 removing clean_removed |
668 removing clean_removed |
645 adding missing_wc |
669 adding missing_wc |
646 removing modified_removed |
670 removing modified_removed |
647 adding removed_revert |
671 adding removed_revert |
648 adding removed_wc |
672 adding removed_wc |
|
673 $ hg forget *untracked* |
649 $ hg status |
674 $ hg status |
650 M added_wc |
675 M added_wc |
651 M clean_wc |
676 M clean_wc |
652 M modified_revert |
677 M modified_revert |
653 M modified_wc |
678 M modified_wc |
654 A missing_wc |
679 A missing_wc |
655 A removed_revert |
680 A removed_revert |
656 A removed_wc |
681 A removed_wc |
657 R added_removed |
682 R added_removed |
658 R added_revert |
683 R added_revert |
|
684 R added_untracked-clean |
659 R clean_removed |
685 R clean_removed |
|
686 R clean_untracked-clean |
660 R modified_removed |
687 R modified_removed |
|
688 R modified_untracked-clean |
661 |
689 |
662 $ hg status --rev 'desc("base")' |
690 $ hg status --rev 'desc("base")' |
663 M clean_wc |
691 M clean_wc |
664 M modified_clean |
692 M modified_clean |
665 M modified_wc |
693 M modified_wc |
666 M removed_wc |
694 M removed_wc |
667 A added_clean |
695 A added_clean |
668 A added_wc |
696 A added_wc |
669 A missing_wc |
697 A missing_wc |
670 R clean_removed |
698 R clean_removed |
|
699 R clean_untracked-clean |
671 R modified_removed |
700 R modified_removed |
|
701 R modified_untracked-clean |
672 R removed_clean |
702 R removed_clean |
673 R removed_removed |
703 R removed_removed |
|
704 R removed_untracked-clean |
674 |
705 |
675 (create a simple text version of the content) |
706 (create a simple text version of the content) |
676 |
707 |
677 $ python ../dircontent.py > ../content-wc.txt |
708 $ python ../dircontent.py > ../content-wc.txt |
678 $ cat ../content-wc.txt |
709 $ cat ../content-wc.txt |
679 parent added_clean |
710 parent added_clean |
|
711 parent added_untracked-clean |
680 wc added_wc |
712 wc added_wc |
681 base clean_clean |
713 base clean_clean |
682 base clean_revert |
714 base clean_revert |
|
715 base clean_untracked-clean |
683 wc clean_wc |
716 wc clean_wc |
684 wc missing_wc |
717 wc missing_wc |
685 parent modified_clean |
718 parent modified_clean |
686 base modified_revert |
719 base modified_revert |
|
720 parent modified_untracked-clean |
687 wc modified_wc |
721 wc modified_wc |
688 base removed_revert |
722 base removed_revert |
689 wc removed_wc |
723 wc removed_wc |
690 |
724 |
691 $ cd .. |
725 $ cd .. |
701 check revert output |
735 check revert output |
702 |
736 |
703 $ hg revert --all |
737 $ hg revert --all |
704 undeleting added_removed |
738 undeleting added_removed |
705 undeleting added_revert |
739 undeleting added_revert |
|
740 undeleting added_untracked-clean |
706 reverting added_wc |
741 reverting added_wc |
707 undeleting clean_removed |
742 undeleting clean_removed |
|
743 undeleting clean_untracked-clean |
708 reverting clean_wc |
744 reverting clean_wc |
709 forgetting missing_wc |
745 forgetting missing_wc |
710 undeleting modified_removed |
746 undeleting modified_removed |
711 reverting modified_revert |
747 reverting modified_revert |
|
748 undeleting modified_untracked-clean |
712 reverting modified_wc |
749 reverting modified_wc |
713 forgetting removed_revert |
750 forgetting removed_revert |
714 forgetting removed_wc |
751 forgetting removed_wc |
715 |
752 |
716 Compare resulting directory with revert target. |
753 Compare resulting directory with revert target. |
748 |
785 |
749 $ hg revert --all --rev 'desc(base)' |
786 $ hg revert --all --rev 'desc(base)' |
750 removing added_clean |
787 removing added_clean |
751 removing added_wc |
788 removing added_wc |
752 undeleting clean_removed |
789 undeleting clean_removed |
|
790 undeleting clean_untracked-clean |
753 reverting clean_wc |
791 reverting clean_wc |
754 forgetting missing_wc |
792 forgetting missing_wc |
755 reverting modified_clean |
793 reverting modified_clean |
756 undeleting modified_removed |
794 undeleting modified_removed |
757 reverting modified_revert |
795 reverting modified_revert |
|
796 undeleting modified_untracked-clean |
758 reverting modified_wc |
797 reverting modified_wc |
759 adding removed_clean |
798 adding removed_clean |
760 adding removed_removed |
799 adding removed_removed |
761 reverting removed_revert |
800 reverting removed_revert |
|
801 adding removed_untracked-clean |
762 reverting removed_wc |
802 reverting removed_wc |
763 |
803 |
764 Compare resulting directory with revert target. |
804 Compare resulting directory with revert target. |
765 |
805 |
766 The diff is filtered to include change only. The only difference should be |
806 The diff is filtered to include change only. The only difference should be |
800 |
842 |
801 ### revert for: added_removed |
843 ### revert for: added_removed |
802 |
844 |
803 ### revert for: added_revert |
845 ### revert for: added_revert |
804 |
846 |
|
847 ### revert for: added_untracked-clean |
|
848 |
805 ### revert for: added_wc |
849 ### revert for: added_wc |
806 |
850 |
807 ### revert for: clean_clean |
851 ### revert for: clean_clean |
808 no changes needed to clean_clean |
852 no changes needed to clean_clean |
809 |
853 |
810 ### revert for: clean_removed |
854 ### revert for: clean_removed |
811 |
855 |
812 ### revert for: clean_revert |
856 ### revert for: clean_revert |
813 no changes needed to clean_revert |
857 no changes needed to clean_revert |
814 |
858 |
|
859 ### revert for: clean_untracked-clean |
|
860 |
815 ### revert for: clean_wc |
861 ### revert for: clean_wc |
816 |
862 |
817 ### revert for: missing_clean |
863 ### revert for: missing_clean |
818 missing_clean: no such file in rev * (glob) |
864 missing_clean: no such file in rev * (glob) |
819 |
865 |
821 missing_removed: no such file in rev * (glob) |
867 missing_removed: no such file in rev * (glob) |
822 |
868 |
823 ### revert for: missing_revert |
869 ### revert for: missing_revert |
824 missing_revert: no such file in rev * (glob) |
870 missing_revert: no such file in rev * (glob) |
825 |
871 |
|
872 ### revert for: missing_untracked-clean |
|
873 missing_untracked-clean: no such file in rev * (glob) |
|
874 |
826 ### revert for: missing_wc |
875 ### revert for: missing_wc |
827 |
876 |
828 ### revert for: modified_clean |
877 ### revert for: modified_clean |
829 no changes needed to modified_clean |
878 no changes needed to modified_clean |
830 |
879 |
831 ### revert for: modified_removed |
880 ### revert for: modified_removed |
832 |
881 |
833 ### revert for: modified_revert |
882 ### revert for: modified_revert |
834 |
883 |
|
884 ### revert for: modified_untracked-clean |
|
885 |
835 ### revert for: modified_wc |
886 ### revert for: modified_wc |
836 |
887 |
837 ### revert for: removed_clean |
888 ### revert for: removed_clean |
838 removed_clean: no such file in rev * (glob) |
889 removed_clean: no such file in rev * (glob) |
839 |
890 |
840 ### revert for: removed_removed |
891 ### revert for: removed_removed |
841 removed_removed: no such file in rev * (glob) |
892 removed_removed: no such file in rev * (glob) |
842 |
893 |
843 ### revert for: removed_revert |
894 ### revert for: removed_revert |
|
895 |
|
896 ### revert for: removed_untracked-clean |
|
897 removed_untracked-clean: no such file in rev * (glob) |
844 |
898 |
845 ### revert for: removed_wc |
899 ### revert for: removed_wc |
846 |
900 |
847 |
901 |
848 check resulting directory againt the --all run |
902 check resulting directory againt the --all run |
884 |
939 |
885 ### revert for: added_removed |
940 ### revert for: added_removed |
886 |
941 |
887 ### revert for: added_revert |
942 ### revert for: added_revert |
888 |
943 |
|
944 ### revert for: added_untracked-clean |
|
945 |
889 ### revert for: added_wc |
946 ### revert for: added_wc |
890 |
947 |
891 ### revert for: clean_clean |
948 ### revert for: clean_clean |
892 |
949 |
893 ### revert for: clean_removed |
950 ### revert for: clean_removed |
894 |
951 |
895 ### revert for: clean_revert |
952 ### revert for: clean_revert |
|
953 |
|
954 ### revert for: clean_untracked-clean |
896 |
955 |
897 ### revert for: clean_wc |
956 ### revert for: clean_wc |
898 |
957 |
899 ### revert for: missing_clean |
958 ### revert for: missing_clean |
900 missing_clean: no such file in rev * (glob) |
959 missing_clean: no such file in rev * (glob) |
903 missing_removed: no such file in rev * (glob) |
962 missing_removed: no such file in rev * (glob) |
904 |
963 |
905 ### revert for: missing_revert |
964 ### revert for: missing_revert |
906 missing_revert: no such file in rev * (glob) |
965 missing_revert: no such file in rev * (glob) |
907 |
966 |
|
967 ### revert for: missing_untracked-clean |
|
968 missing_untracked-clean: no such file in rev * (glob) |
|
969 |
908 ### revert for: missing_wc |
970 ### revert for: missing_wc |
909 |
971 |
910 ### revert for: modified_clean |
972 ### revert for: modified_clean |
911 |
973 |
912 ### revert for: modified_removed |
974 ### revert for: modified_removed |
913 |
975 |
914 ### revert for: modified_revert |
976 ### revert for: modified_revert |
915 |
977 |
|
978 ### revert for: modified_untracked-clean |
|
979 |
916 ### revert for: modified_wc |
980 ### revert for: modified_wc |
917 |
981 |
918 ### revert for: removed_clean |
982 ### revert for: removed_clean |
919 |
983 |
920 ### revert for: removed_removed |
984 ### revert for: removed_removed |
921 |
985 |
922 ### revert for: removed_revert |
986 ### revert for: removed_revert |
|
987 |
|
988 ### revert for: removed_untracked-clean |
923 |
989 |
924 ### revert for: removed_wc |
990 ### revert for: removed_wc |
925 |
991 |
926 |
992 |
927 check resulting directory againt the --all run |
993 check resulting directory againt the --all run |