FileBrowserV2Tests.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 28 Aug 2013 12:52:38 +0100
branchjv
changeset 13465 1f1e8b6710c8
parent 12650 e0f607754b9a
child 15950 23be8cf85415
permissions -rw-r--r--
Bugfix Tools::CodeView2::GutterView - do not redraw gutter if its not shown. This actually fixes DNU when CodeView2 is used in diff view. Then the second gutter is not shown and #yOfTextViewLine: returns nil (bad) which leads to DNU.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5142
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
     1
"
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
     2
 COPYRIGHT (c) 2002 by eXept Software AG
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
     3
              All Rights Reserved
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
     4
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
     5
 This software is furnished under a license and may be used
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
     6
 only in accordance with the terms of that license and with the
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
     8
 be provided or otherwise made available to, or used by, any
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
     9
 other person.  No title to or ownership of the software is
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    10
 hereby transferred.
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    11
"
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
321c1729db5b initial checkin
penk
parents:
diff changeset
    13
321c1729db5b initial checkin
penk
parents:
diff changeset
    14
TestCase subclass:#FileBrowserV2Tests
321c1729db5b initial checkin
penk
parents:
diff changeset
    15
	instanceVariableNames:''
321c1729db5b initial checkin
penk
parents:
diff changeset
    16
	classVariableNames:''
321c1729db5b initial checkin
penk
parents:
diff changeset
    17
	poolDictionaries:''
321c1729db5b initial checkin
penk
parents:
diff changeset
    18
	category:'Interface-Tools-File'
321c1729db5b initial checkin
penk
parents:
diff changeset
    19
!
321c1729db5b initial checkin
penk
parents:
diff changeset
    20
321c1729db5b initial checkin
penk
parents:
diff changeset
    21
!FileBrowserV2Tests class methodsFor:'documentation'!
321c1729db5b initial checkin
penk
parents:
diff changeset
    22
5142
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    23
copyright
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    24
"
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    25
 COPYRIGHT (c) 2002 by eXept Software AG
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    26
              All Rights Reserved
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    27
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    28
 This software is furnished under a license and may be used
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    29
 only in accordance with the terms of that license and with the
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    30
 inclusion of the above copyright notice.   This software may not
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    31
 be provided or otherwise made available to, or used by, any
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    32
 other person.  No title to or ownership of the software is
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    33
 hereby transferred.
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    34
"
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    35
!
c3a536bb4425 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4623
diff changeset
    36
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
    37
documentation
321c1729db5b initial checkin
penk
parents:
diff changeset
    38
"
321c1729db5b initial checkin
penk
parents:
diff changeset
    39
    documentation to be added.
321c1729db5b initial checkin
penk
parents:
diff changeset
    40
321c1729db5b initial checkin
penk
parents:
diff changeset
    41
    [author:]
321c1729db5b initial checkin
penk
parents:
diff changeset
    42
        Christian Penk (penk@bierfix)
321c1729db5b initial checkin
penk
parents:
diff changeset
    43
321c1729db5b initial checkin
penk
parents:
diff changeset
    44
    [instance variables:]
321c1729db5b initial checkin
penk
parents:
diff changeset
    45
321c1729db5b initial checkin
penk
parents:
diff changeset
    46
    [class variables:]
321c1729db5b initial checkin
penk
parents:
diff changeset
    47
321c1729db5b initial checkin
penk
parents:
diff changeset
    48
    [see also:]
321c1729db5b initial checkin
penk
parents:
diff changeset
    49
321c1729db5b initial checkin
penk
parents:
diff changeset
    50
"
321c1729db5b initial checkin
penk
parents:
diff changeset
    51
! !
321c1729db5b initial checkin
penk
parents:
diff changeset
    52
321c1729db5b initial checkin
penk
parents:
diff changeset
    53
!FileBrowserV2Tests methodsFor:'initialize / release'!
321c1729db5b initial checkin
penk
parents:
diff changeset
    54
321c1729db5b initial checkin
penk
parents:
diff changeset
    55
setUp
321c1729db5b initial checkin
penk
parents:
diff changeset
    56
    "common setup - invoked before testing"
321c1729db5b initial checkin
penk
parents:
diff changeset
    57
321c1729db5b initial checkin
penk
parents:
diff changeset
    58
    super setUp
321c1729db5b initial checkin
penk
parents:
diff changeset
    59
!
321c1729db5b initial checkin
penk
parents:
diff changeset
    60
321c1729db5b initial checkin
penk
parents:
diff changeset
    61
tearDown
321c1729db5b initial checkin
penk
parents:
diff changeset
    62
    "common cleanup - invoked after testing"
321c1729db5b initial checkin
penk
parents:
diff changeset
    63
321c1729db5b initial checkin
penk
parents:
diff changeset
    64
    super tearDown
321c1729db5b initial checkin
penk
parents:
diff changeset
    65
! !
321c1729db5b initial checkin
penk
parents:
diff changeset
    66
321c1729db5b initial checkin
penk
parents:
diff changeset
    67
!FileBrowserV2Tests methodsFor:'tests'!
321c1729db5b initial checkin
penk
parents:
diff changeset
    68
4344
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    69
createBigDirectory
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    70
4623
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
    71
    | testDir |
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
    72
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
    73
    testDir := Filename homeDirectory construct:'Test'.
4344
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    74
    (Filename homeDirectory construct:'Test') makeDirectory.
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    75
    1 to:5 do:[: id1|
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    76
        1 to:50 do:[: id2|
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    77
            1 to:50 do:[: id3|
4623
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
    78
                (testDir construct:('file', id1 asString, '.', id2 asString,'.', id3 asString)) writeStream
4344
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    79
            ]
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    80
        ].
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    81
    ]
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    82
"
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    83
FileBrowserV2Tests new createBigDirectory
5228
6a81443432e9 comment change
penk
parents: 5142
diff changeset
    84
Dialog requestFileName:'test' default:nil pattern:'*' fromDirectory:'/home/penk/Test'
4344
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    85
"
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    86
!
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    87
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    88
removeBigDirectory
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    89
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    90
    (Filename homeDirectory construct:'Test') recursiveRemove.
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    91
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    92
"
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    93
FileBrowserV2Tests new removeBigDirectory
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    94
"
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    95
!
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    96
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    97
testBigDirectory
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    98
!
71914751e6db *** empty log message ***
penk
parents: 4025
diff changeset
    99
3953
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   100
testDirectoryHistory
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   101
    "Just a demonstration testCase.
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   102
     Double click on the TestCase class or open a TestRunner to see me checking...
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   103
     - please add more methods like this..."
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   104
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   105
    |history|
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   106
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   107
    history := AbstractFileBrowser directoryHistoryClass new.
4025
f2f8fca68876 history test
penk
parents: 3964
diff changeset
   108
    history resetForwardBackward.
4348
6fca56fb8d4e history back forward is running now
penk
parents: 4344
diff changeset
   109
    self shouldnt: (history canBackward).
3953
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   110
    history addToHistory:'1'.
4348
6fca56fb8d4e history back forward is running now
penk
parents: 4344
diff changeset
   111
    self shouldnt:(history canBackward).
3953
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   112
    self shouldnt:(history canForward).
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   113
    history addToHistory:'2'.
4348
6fca56fb8d4e history back forward is running now
penk
parents: 4344
diff changeset
   114
    self should:(history canBackward).
3953
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   115
    history addToHistory:'3'.
4348
6fca56fb8d4e history back forward is running now
penk
parents: 4344
diff changeset
   116
    self should:(history canBackward).
3953
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   117
    self shouldnt: (history canForward).
4348
6fca56fb8d4e history back forward is running now
penk
parents: 4344
diff changeset
   118
    self should: ((history goBackward) = '2').
6fca56fb8d4e history back forward is running now
penk
parents: 4344
diff changeset
   119
    self should: ((history goBackward) = '1').
3953
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   120
    self should: (history canForward).
4348
6fca56fb8d4e history back forward is running now
penk
parents: 4344
diff changeset
   121
    self should: ((history goForward) = '2').
4025
f2f8fca68876 history test
penk
parents: 3964
diff changeset
   122
    self should: (history canForward).
3953
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   123
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   124
    
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   125
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   126
    "
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   127
     self run:#testDirectoryHistory
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   128
    "
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   129
!
4fd0ed70cf36 next stage
penk
parents: 3892
diff changeset
   130
4623
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   131
testDosFiles
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   132
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   133
    | file stream|
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   134
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   135
    file := Filename currentDirectory asAbsoluteFilename construct:'foobar~1'.
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   136
    stream := file writeStream.
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   137
    self should:file exists.
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   138
    stream close.
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   139
    file remove.
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   140
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   141
"
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   142
self new testDosFiles   
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   143
"
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   144
!
6632e9689329 fix for windows
penk
parents: 4348
diff changeset
   145
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   146
testFileItem
321c1729db5b initial checkin
penk
parents:
diff changeset
   147
    "Just a demonstration testCase.
321c1729db5b initial checkin
penk
parents:
diff changeset
   148
     Double click on the TestCase class or open a TestRunner to see me checking...
321c1729db5b initial checkin
penk
parents:
diff changeset
   149
     - please add more methods like this..."
321c1729db5b initial checkin
penk
parents:
diff changeset
   150
321c1729db5b initial checkin
penk
parents:
diff changeset
   151
    | file item|
321c1729db5b initial checkin
penk
parents:
diff changeset
   152
321c1729db5b initial checkin
penk
parents:
diff changeset
   153
    file := Filename homeDirectory construct:'work/stx/doc/online/english/index.html'.
321c1729db5b initial checkin
penk
parents:
diff changeset
   154
    file exists ifTrue:[
4025
f2f8fca68876 history test
penk
parents: 3964
diff changeset
   155
        item := DirectoryContentsBrowser itemClass fileName:file.
3892
321c1729db5b initial checkin
penk
parents:
diff changeset
   156
        self should:(item mimeType = 'text/html').
321c1729db5b initial checkin
penk
parents:
diff changeset
   157
    ].
321c1729db5b initial checkin
penk
parents:
diff changeset
   158
321c1729db5b initial checkin
penk
parents:
diff changeset
   159
    "
321c1729db5b initial checkin
penk
parents:
diff changeset
   160
     self run:#testFileItem
321c1729db5b initial checkin
penk
parents:
diff changeset
   161
    "
321c1729db5b initial checkin
penk
parents:
diff changeset
   162
!
321c1729db5b initial checkin
penk
parents:
diff changeset
   163
321c1729db5b initial checkin
penk
parents:
diff changeset
   164
testHardLink
321c1729db5b initial checkin
penk
parents:
diff changeset
   165
    "Just a demonstration testCase.
321c1729db5b initial checkin
penk
parents:
diff changeset
   166
     Double click on the TestCase class or open a TestRunner to see me checking...
321c1729db5b initial checkin
penk
parents:
diff changeset
   167
     - please add more methods like this..."
321c1729db5b initial checkin
penk
parents:
diff changeset
   168
321c1729db5b initial checkin
penk
parents:
diff changeset
   169
    |browser|
321c1729db5b initial checkin
penk
parents:
diff changeset
   170
321c1729db5b initial checkin
penk
parents:
diff changeset
   171
    browser := FileBrowserV2 new.
321c1729db5b initial checkin
penk
parents:
diff changeset
   172
    
321c1729db5b initial checkin
penk
parents:
diff changeset
   173
    self should: ( browser isKindOf:AbstractFileBrowser ).
321c1729db5b initial checkin
penk
parents:
diff changeset
   174
    self should: ( browser respondsTo:#newHardLink ).
321c1729db5b initial checkin
penk
parents:
diff changeset
   175
    
321c1729db5b initial checkin
penk
parents:
diff changeset
   176
"/    self should: [ o at:0 ] raise:Error.
321c1729db5b initial checkin
penk
parents:
diff changeset
   177
321c1729db5b initial checkin
penk
parents:
diff changeset
   178
    "
321c1729db5b initial checkin
penk
parents:
diff changeset
   179
     self run:#testHardLink
321c1729db5b initial checkin
penk
parents:
diff changeset
   180
    "
321c1729db5b initial checkin
penk
parents:
diff changeset
   181
! !
321c1729db5b initial checkin
penk
parents:
diff changeset
   182
321c1729db5b initial checkin
penk
parents:
diff changeset
   183
!FileBrowserV2Tests class methodsFor:'documentation'!
321c1729db5b initial checkin
penk
parents:
diff changeset
   184
321c1729db5b initial checkin
penk
parents:
diff changeset
   185
version
12125
0c49a3b13e43 Merged with /trunk
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12123
diff changeset
   186
    ^ '$Header: /cvs/stx/stx/libtool/FileBrowserV2Tests.st,v 1.9 2003/10/02 12:22:11 penk Exp $'
12650
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   187
!
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   188
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   189
version_HG
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   190
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   191
    ^ '$Changeset: <not expanded> $'
12125
0c49a3b13e43 Merged with /trunk
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12123
diff changeset
   192
! !
12650
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   193