Skip to content

Commit

Permalink
we also need to be able to convert a file reference to a locator
Browse files Browse the repository at this point in the history
  • Loading branch information
demarey committed May 29, 2020
1 parent cd4c5f8 commit 2564418
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 0 deletions.
5 changes: 5 additions & 0 deletions src/FileSystem-Core/FileReference.class.st
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,11 @@ FileReference >> asAbsolute [
ifFalse: [ filesystem referenceTo: (filesystem resolve: path) ]
]

{ #category : #converting }
FileReference >> asFileLocatorOrReference [
^ self path asFileLocatorOrReference
]

{ #category : #converting }
FileReference >> asFileReference [
^ self
Expand Down
27 changes: 27 additions & 0 deletions src/FileSystem-Tests-Core/FileReferenceTest.class.st
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,33 @@ FileReferenceTest >> testAsAbsoluteIdentity [
self assert: ref asAbsolute identicalTo: ref
]

{ #category : #tests }
FileReferenceTest >> testAsFileLocatorOrReferenceReturnsALocatorWhenStringRefersToAKnownOrigin [
| fileRef locator |
fileRef := (FileLocator home / 'foo') asFileReference.

locator := fileRef asFileLocatorOrReference.

self
assert: locator origin
equals: #home.
self
assert: locator fullName
equals: fileRef fullName.
]

{ #category : #tests }
FileReferenceTest >> testAsFileLocatorOrReferenceReturnsAReferenceWhenStringDoesNotReferToAKnownOrigin [
| fileRef result |
fileRef := '/foo' asFileReference.

result := fileRef asFileLocatorOrReference.

self
assert: result
equals: fileRef.
]

{ #category : #tests }
FileReferenceTest >> testAsReference [
| ref |
Expand Down

0 comments on commit 2564418

Please sign in to comment.