Annotation of parser3/tests/174.html, revision 1.2

1.2     ! misha       1: @main[][sDir;sName;hf;hf2;tList;i;k;v;iSizeBefore;iSizeAfter]
1.1       misha       2: $sDir[174]
                      3: $sName[data]
                      4: 
1.2     ! misha       5: 
1.1       misha       6: # remove previous files first
                      7: $tList[^file:list[$sDir]]
                      8: ^tList.menu{
                      9:        ^file:delete[$sDir/$tList.name]
                     10: }
                     11: 
1.2     ! misha      12: 
        !            13: # open hashfiles
1.1       misha      14: $hf[^hashfile::open[$sDir/$sName]]
1.2     ! misha      15: $hf2[^hashfile::open[$sDir/${sName}2]]
        !            16: 
        !            17: 
1.1       misha      18: 
                     19: # check hashfile files -- it mustn't exist because of delayed opened
                     20: ^checkFiles[$sDir;$sName]
1.2     ! misha      21: ^checkFiles[$sDir;${sName}2]
        !            22: 
        !            23: 
        !            24: # $hf2 for checking .cleanup[]
        !            25: ^fill[$hf2]
        !            26: $iSizeBefore(^getFileSize[$sDir;${sName}2])
        !            27: 
        !            28: 
1.1       misha      29: 
                     30: # add item with key '0' for 2 sec
                     31: $hf.0[
                     32:        $.value[zigi]
                     33:        $.expires(2/24/60/60)
                     34: ]
                     35: 
1.2     ! misha      36: # add more items to hf
1.1       misha      37: ^for[i](1;9){
                     38:        $hf.[$i][=$i=]
                     39: }
                     40: 
1.2     ! misha      41: 
        !            42: 
        !            43: <hr />
1.1       misha      44: ^checkFiles[$sDir;$sName]
1.2     ! misha      45: ^checkFiles[$sDir;${sName}2]
        !            46: 
1.1       misha      47: 
1.2     ! misha      48: 
        !            49: <hr />
1.1       misha      50: ^$hf.0: '$hf.0'<br />
                     51: 
1.2     ! misha      52: 
        !            53: # wait till some items expire
        !            54: ^sleep(3)
        !            55: 
        !            56: 
        !            57: 
        !            58: 
1.1       misha      59: <hr />
1.2     ! misha      60: # $hf2 for checking .cleanup[]: add many items, read _file_ size, wait till items expire, .cleanup[],
        !            61: # add the same number of items, read file size again and compare sizes.
        !            62: # second file size must not be higher because of space used with expired items must be reused
        !            63: ^hf2.cleanup[]
        !            64: #^hf2.foreach[;]{}
        !            65: 
        !            66: 
        !            67: ^fill[$hf2]
        !            68: 
        !            69: $iSizeAfter(^getFileSize[$sDir;${sName}2])
        !            70: ^if($iSizeAfter > $iSizeBefore){file size increased}{file size wasn't increased}
        !            71: 
        !            72: 
1.1       misha      73: 
1.2     ! misha      74: <hr />
1.1       misha      75: ^$hf.0: '$hf.0'<br />
                     76: 
1.2     ! misha      77: 
1.1       misha      78: 
                     79: <hr />
                     80: keys: ^hf.foreach[k;]{$k}[, ]
                     81: 
                     82: 
                     83: 
                     84: <hr />
1.2     ! misha      85: ^hf.delete[1]
1.1       misha      86: ^hf.foreach[k;v]{^$hf.${k}: '$v'<br />}
                     87: 
                     88: 
                     89: 
                     90: <hr />
1.2     ! misha      91: ^hf.delete[2]
1.1       misha      92: $s[^hf.foreach[k;v]{^$hf.${k}: '$v'}[<br />]]
                     93: $s<br />
                     94: 
                     95: 
                     96: 
                     97: <hr />
                     98: # delete hashfile
                     99: ^hf.delete[]
                    100: # files mustn't exist after .delete[]
                    101: ^checkFiles[$sDir;$sName]
                    102: 
1.2     ! misha     103: 
        !           104: 
1.1       misha     105: <hr />
1.2     ! misha     106: # trying to read not existing hashfile (it must auto opened)
1.1       misha     107: ^hf.foreach[k;v]{^$hf.${k}: '$v'<br />}
                    108: # files must exist now
                    109: ^checkFiles[$sDir;$sName]
                    110: 
                    111: 
                    112: 
                    113: 
                    114: 
                    115: @checkFiles[sDir;sName]
                    116: ^checkFile[$sDir/${sName}.dir]
                    117: ^checkFile[$sDir/${sName}.pag]
                    118: 
                    119: 
                    120: 
                    121: 
                    122: @checkFile[sFileName]
                    123: $sFileName -- ^if(-f $sFileName){exist}{not exist}<br />
1.2     ! misha     124: 
        !           125: 
        !           126: 
        !           127: @getFileSize[sDir;sName][fStat]
        !           128: $fStat[^file::stat[$sDir/${sName}.pag]]
        !           129: $result($fStat.size)
        !           130: 
        !           131: 
        !           132: 
        !           133: @fill[hf][iCount;i]
        !           134: $iCount(150)
        !           135: ^for[i](0;$iCount){
        !           136:        $hf.[^math:uuid[]][
        !           137:                $.value[^math:uuid[]]
        !           138:                $.expires(2/24/60/60)
        !           139:        ]
        !           140: }
        !           141: ^hf.release[]

E-mail: