tests/test-hgweb-json.t
changeset 24544 71e96b9fd3fd
child 24545 9e0c67e84896
equal deleted inserted replaced
24543:747401086a38 24544:71e96b9fd3fd
       
     1 #require json
       
     2 #require serve
       
     3 
       
     4   $ request() {
       
     5   >   $TESTDIR/get-with-headers.py --json localhost:$HGPORT "$1"
       
     6   > }
       
     7 
       
     8   $ hg init test
       
     9   $ cd test
       
    10   $ mkdir da
       
    11   $ echo foo > da/foo
       
    12   $ echo foo > foo
       
    13   $ hg -q ci -A -m initial
       
    14   $ echo bar > foo
       
    15   $ hg ci -m 'modify foo'
       
    16   $ echo bar > da/foo
       
    17   $ hg ci -m 'modify da/foo'
       
    18   $ hg bookmark bookmark1
       
    19   $ hg up default
       
    20   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
       
    21   (leaving bookmark bookmark1)
       
    22   $ hg mv foo foo-new
       
    23   $ hg commit -m 'move foo'
       
    24   $ hg tag -m 'create tag' tag1
       
    25   $ echo baz > da/foo
       
    26   $ hg commit -m 'another commit to da/foo'
       
    27   $ hg tag -m 'create tag2' tag2
       
    28   $ hg bookmark bookmark2
       
    29   $ hg -q up -r 0
       
    30   $ hg -q branch test-branch
       
    31   $ echo branch > foo
       
    32   $ hg commit -m 'create test branch'
       
    33 
       
    34   $ hg log -G
       
    35   @  changeset:   7:6ab967a8ab34
       
    36   |  branch:      test-branch
       
    37   |  tag:         tip
       
    38   |  parent:      0:06e557f3edf6
       
    39   |  user:        test
       
    40   |  date:        Thu Jan 01 00:00:00 1970 +0000
       
    41   |  summary:     create test branch
       
    42   |
       
    43   | o  changeset:   6:ceed296fe500
       
    44   | |  bookmark:    bookmark2
       
    45   | |  user:        test
       
    46   | |  date:        Thu Jan 01 00:00:00 1970 +0000
       
    47   | |  summary:     create tag2
       
    48   | |
       
    49   | o  changeset:   5:f2890a05fea4
       
    50   | |  tag:         tag2
       
    51   | |  user:        test
       
    52   | |  date:        Thu Jan 01 00:00:00 1970 +0000
       
    53   | |  summary:     another commit to da/foo
       
    54   | |
       
    55   | o  changeset:   4:93a8ce14f891
       
    56   | |  user:        test
       
    57   | |  date:        Thu Jan 01 00:00:00 1970 +0000
       
    58   | |  summary:     create tag
       
    59   | |
       
    60   | o  changeset:   3:78896eb0e102
       
    61   | |  tag:         tag1
       
    62   | |  user:        test
       
    63   | |  date:        Thu Jan 01 00:00:00 1970 +0000
       
    64   | |  summary:     move foo
       
    65   | |
       
    66   | o  changeset:   2:8d7c456572ac
       
    67   | |  bookmark:    bookmark1
       
    68   | |  user:        test
       
    69   | |  date:        Thu Jan 01 00:00:00 1970 +0000
       
    70   | |  summary:     modify da/foo
       
    71   | |
       
    72   | o  changeset:   1:f8bbb9024b10
       
    73   |/   user:        test
       
    74   |    date:        Thu Jan 01 00:00:00 1970 +0000
       
    75   |    summary:     modify foo
       
    76   |
       
    77   o  changeset:   0:06e557f3edf6
       
    78      user:        test
       
    79      date:        Thu Jan 01 00:00:00 1970 +0000
       
    80      summary:     initial
       
    81   
       
    82 
       
    83   $ hg serve -p $HGPORT -d --pid-file=hg.pid -A access.log -E error.log
       
    84   $ cat hg.pid >> $DAEMON_PIDS
       
    85 
       
    86 (Try to keep these in roughly the order they are defined in webcommands.py)
       
    87 
       
    88 (log is handled by filelog/ and changelog/ - ignore it)
       
    89 
       
    90 (rawfile/ doesn't use templating - nothing to test)
       
    91 
       
    92 file/{revision}/{path} shows file revision
       
    93 
       
    94   $ request json-rev/06e557f3edf6/foo
       
    95   200 Script output follows
       
    96   
       
    97   "not yet implemented"
       
    98 
       
    99 file/{revision} shows root directory info
       
   100 
       
   101   $ request json-rev/06e557f3edf6
       
   102   200 Script output follows
       
   103   
       
   104   "not yet implemented"
       
   105 
       
   106 changelog/ shows information about several changesets
       
   107 
       
   108   $ request json-changelog
       
   109   200 Script output follows
       
   110   
       
   111   "not yet implemented"
       
   112 
       
   113 changelog/{revision} shows information about a single changeset
       
   114 
       
   115   $ request json-changelog/06e557f3edf6
       
   116   200 Script output follows
       
   117   
       
   118   "not yet implemented"
       
   119 
       
   120 shortlog/ shows information about a set of changesets
       
   121 
       
   122   $ request json-shortlog
       
   123   200 Script output follows
       
   124   
       
   125   "not yet implemented"
       
   126 
       
   127 changeset/ renders the tip changeset
       
   128 
       
   129   $ request json-rev
       
   130   200 Script output follows
       
   131   
       
   132   "not yet implemented"
       
   133 
       
   134 changeset/{revision} shows tags
       
   135 
       
   136   $ request json-rev/78896eb0e102
       
   137   200 Script output follows
       
   138   
       
   139   "not yet implemented"
       
   140 
       
   141 changeset/{revision} shows bookmarks
       
   142 
       
   143   $ request json-rev/8d7c456572ac
       
   144   200 Script output follows
       
   145   
       
   146   "not yet implemented"
       
   147 
       
   148 changeset/{revision} shows branches
       
   149 
       
   150   $ request json-rev/6ab967a8ab34
       
   151   200 Script output follows
       
   152   
       
   153   "not yet implemented"
       
   154 
       
   155 manifest/{revision}/{path} shows info about a directory at a revision
       
   156 
       
   157   $ request json-manifest/06e557f3edf6/
       
   158   200 Script output follows
       
   159   
       
   160   "not yet implemented"
       
   161 
       
   162 tags/ shows tags info
       
   163 
       
   164   $ request json-tags
       
   165   200 Script output follows
       
   166   
       
   167   "not yet implemented"
       
   168 
       
   169 bookmarks/ shows bookmarks info
       
   170 
       
   171   $ request json-bookmarks
       
   172   200 Script output follows
       
   173   
       
   174   "not yet implemented"
       
   175 
       
   176 branches/ shows branches info
       
   177 
       
   178   $ request json-branches
       
   179   200 Script output follows
       
   180   
       
   181   "not yet implemented"
       
   182 
       
   183 summary/ shows a summary of repository state
       
   184 
       
   185   $ request json-summary
       
   186   200 Script output follows
       
   187   
       
   188   "not yet implemented"
       
   189 
       
   190 filediff/{revision}/{path} shows changes to a file in a revision
       
   191 
       
   192   $ request json-diff/f8bbb9024b10/foo
       
   193   200 Script output follows
       
   194   
       
   195   "not yet implemented"
       
   196 
       
   197 comparison/{revision}/{path} shows information about before and after for a file
       
   198 
       
   199   $ request json-comparison/f8bbb9024b10/foo
       
   200   200 Script output follows
       
   201   
       
   202   "not yet implemented"
       
   203 
       
   204 annotate/{revision}/{path} shows annotations for each line
       
   205 
       
   206   $ request json-annotate/f8bbb9024b10/foo
       
   207   200 Script output follows
       
   208   
       
   209   "not yet implemented"
       
   210 
       
   211 filelog/{revision}/{path} shows history of a single file
       
   212 
       
   213   $ request json-filelog/f8bbb9024b10/foo
       
   214   200 Script output follows
       
   215   
       
   216   "not yet implemented"
       
   217 
       
   218 (archive/ doesn't use templating, so ignore it)
       
   219 
       
   220 (static/ doesn't use templating, so ignore it)
       
   221 
       
   222 graph/ shows information that can be used to render a graph of the DAG
       
   223 
       
   224   $ request json-graph
       
   225   200 Script output follows
       
   226   
       
   227   "not yet implemented"
       
   228 
       
   229 help/ shows help topics
       
   230 
       
   231   $ request json-help
       
   232   200 Script output follows
       
   233   
       
   234   "not yet implemented"
       
   235 
       
   236 help/{topic} shows an individual help topic
       
   237 
       
   238   $ request json-help/phases
       
   239   200 Script output follows
       
   240   
       
   241   "not yet implemented"