tests/test-progress.t
changeset 34319 d64c2c050b54
parent 34002 a37417e30a1f
child 34321 a667f0ca1d5f
equal deleted inserted replaced
34318:1826d695ad58 34319:d64c2c050b54
   190   > import time
   190   > import time
   191   > 
   191   > 
   192   > class mocktime(object):
   192   > class mocktime(object):
   193   >     def __init__(self, increment):
   193   >     def __init__(self, increment):
   194   >         self.time = 0
   194   >         self.time = 0
   195   >         self.increment = increment
   195   >         self.increment = [int(s) for s in increment.split()]
       
   196   >         self.pos = 0
   196   >     def __call__(self):
   197   >     def __call__(self):
   197   >         self.time += self.increment
   198   >         self.time += self.increment[self.pos % len(self.increment)]
       
   199   >         self.pos += 1
   198   >         return self.time
   200   >         return self.time
   199   > 
   201   > 
   200   > def uisetup(ui):
   202   > def uisetup(ui):
   201   >     time.time = mocktime(int(os.environ.get('MOCKTIME', '11')))
   203   >     time.time = mocktime(os.environ.get('MOCKTIME', '11'))
   202   > EOF
   204   > EOF
   203 
   205 
   204   $ cp $HGRCPATH.orig $HGRCPATH
   206   $ cp $HGRCPATH.orig $HGRCPATH
   205   $ echo "[extensions]" >> $HGRCPATH
   207   $ echo "[extensions]" >> $HGRCPATH
   206   $ echo "mocktime=`pwd`/mocktime.py" >> $HGRCPATH
   208   $ echo "mocktime=`pwd`/mocktime.py" >> $HGRCPATH
   242   \r (no-eol) (esc)
   244   \r (no-eol) (esc)
   243   loop [                                                ] 0/4\r (no-eol) (esc)
   245   loop [                                                ] 0/4\r (no-eol) (esc)
   244   loop [=========>                                ] 1/4 1y18w\r (no-eol) (esc)
   246   loop [=========>                                ] 1/4 1y18w\r (no-eol) (esc)
   245   loop [===================>                     ] 2/4 46w03d\r (no-eol) (esc)
   247   loop [===================>                     ] 2/4 46w03d\r (no-eol) (esc)
   246   loop [=============================>           ] 3/4 23w02d\r (no-eol) (esc)
   248   loop [=============================>           ] 3/4 23w02d\r (no-eol) (esc)
       
   249                                                               \r (no-eol) (esc)
       
   250 
       
   251 Non-linear progress:
       
   252 
       
   253   $ MOCKTIME='20 20 20 20 20 20 20 20 20 20 500 500 500 500 500 20 20 20 20 20' hg -y loop 20
       
   254   \r (no-eol) (esc)
       
   255   loop [=>                                      ]  1/20 6m21s\r (no-eol) (esc)
       
   256   loop [===>                                    ]  2/20 6m01s\r (no-eol) (esc)
       
   257   loop [=====>                                  ]  3/20 5m41s\r (no-eol) (esc)
       
   258   loop [=======>                                ]  4/20 5m21s\r (no-eol) (esc)
       
   259   loop [=========>                              ]  5/20 5m01s\r (no-eol) (esc)
       
   260   loop [===========>                            ]  6/20 4m41s\r (no-eol) (esc)
       
   261   loop [=============>                          ]  7/20 4m21s\r (no-eol) (esc)
       
   262   loop [===============>                        ]  8/20 4m01s\r (no-eol) (esc)
       
   263   loop [================>                      ]  9/20 13m27s\r (no-eol) (esc)
       
   264   loop [==================>                    ] 10/20 19m21s\r (no-eol) (esc)
       
   265   loop [====================>                  ] 11/20 22m39s\r (no-eol) (esc)
       
   266   loop [======================>                ] 12/20 24m01s\r (no-eol) (esc)
       
   267   loop [========================>              ] 13/20 23m53s\r (no-eol) (esc)
       
   268   loop [==========================>            ] 14/20 19m09s\r (no-eol) (esc)
       
   269   loop [============================>          ] 15/20 15m01s\r (no-eol) (esc)
       
   270   loop [==============================>        ] 16/20 11m21s\r (no-eol) (esc)
       
   271   loop [=================================>      ] 17/20 8m04s\r (no-eol) (esc)
       
   272   loop [===================================>    ] 18/20 5m07s\r (no-eol) (esc)
       
   273   loop [=====================================>  ] 19/20 2m27s\r (no-eol) (esc)
   247                                                               \r (no-eol) (esc)
   274                                                               \r (no-eol) (esc)
   248 
   275 
   249 Time estimates should not fail when there's no end point:
   276 Time estimates should not fail when there's no end point:
   250   $ hg -y loop -- -4
   277   $ hg -y loop -- -4
   251   \r (no-eol) (esc)
   278   \r (no-eol) (esc)