fix: relative path was not working for rootFolder started with '.'
This commit is contained in:
@@ -33,7 +33,7 @@ var _ = Describe("ChangeDetector", func() {
|
||||
Expect(changed).To(ConsistOf("."))
|
||||
|
||||
// Add one subfolder
|
||||
lastModifiedSince = time.Now()
|
||||
lastModifiedSince = nowWithDelay()
|
||||
err = os.MkdirAll(filepath.Join(testFolder, "a"), 0777)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
@@ -41,10 +41,10 @@ var _ = Describe("ChangeDetector", func() {
|
||||
changed, deleted, err = scanner.Scan(lastModifiedSince)
|
||||
Expect(err).To(BeNil())
|
||||
Expect(deleted).To(BeEmpty())
|
||||
Expect(changed).To(ConsistOf(".", P("/a")))
|
||||
Expect(changed).To(ConsistOf(".", P("a")))
|
||||
|
||||
// Add more subfolders
|
||||
lastModifiedSince = time.Now()
|
||||
lastModifiedSince = nowWithDelay()
|
||||
err = os.MkdirAll(filepath.Join(testFolder, "a", "b", "c"), 0777)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
@@ -52,17 +52,17 @@ var _ = Describe("ChangeDetector", func() {
|
||||
changed, deleted, err = scanner.Scan(lastModifiedSince)
|
||||
Expect(err).To(BeNil())
|
||||
Expect(deleted).To(BeEmpty())
|
||||
Expect(changed).To(ConsistOf(P("/a"), P("/a/b"), P("/a/b/c")))
|
||||
Expect(changed).To(ConsistOf(P("a"), P("a/b"), P("a/b/c")))
|
||||
|
||||
// Scan with no changes
|
||||
lastModifiedSince = time.Now()
|
||||
lastModifiedSince = nowWithDelay()
|
||||
changed, deleted, err = scanner.Scan(lastModifiedSince)
|
||||
Expect(err).To(BeNil())
|
||||
Expect(deleted).To(BeEmpty())
|
||||
Expect(changed).To(BeEmpty())
|
||||
|
||||
// New file in subfolder
|
||||
lastModifiedSince = time.Now()
|
||||
lastModifiedSince = nowWithDelay()
|
||||
_, err = os.Create(filepath.Join(testFolder, "a", "b", "empty.txt"))
|
||||
if err != nil {
|
||||
panic(err)
|
||||
@@ -70,10 +70,10 @@ var _ = Describe("ChangeDetector", func() {
|
||||
changed, deleted, err = scanner.Scan(lastModifiedSince)
|
||||
Expect(err).To(BeNil())
|
||||
Expect(deleted).To(BeEmpty())
|
||||
Expect(changed).To(ConsistOf(P("/a/b")))
|
||||
Expect(changed).To(ConsistOf(P("a/b")))
|
||||
|
||||
// Delete file in subfolder
|
||||
lastModifiedSince = time.Now()
|
||||
lastModifiedSince = nowWithDelay()
|
||||
err = os.Remove(filepath.Join(testFolder, "a", "b", "empty.txt"))
|
||||
if err != nil {
|
||||
panic(err)
|
||||
@@ -81,21 +81,21 @@ var _ = Describe("ChangeDetector", func() {
|
||||
changed, deleted, err = scanner.Scan(lastModifiedSince)
|
||||
Expect(err).To(BeNil())
|
||||
Expect(deleted).To(BeEmpty())
|
||||
Expect(changed).To(ConsistOf(P("/a/b")))
|
||||
Expect(changed).To(ConsistOf(P("a/b")))
|
||||
|
||||
// Delete subfolder
|
||||
lastModifiedSince = time.Now()
|
||||
lastModifiedSince = nowWithDelay()
|
||||
err = os.Remove(filepath.Join(testFolder, "a", "b", "c"))
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
changed, deleted, err = scanner.Scan(lastModifiedSince)
|
||||
Expect(err).To(BeNil())
|
||||
Expect(deleted).To(ConsistOf(P("/a/b/c")))
|
||||
Expect(changed).To(ConsistOf(P("/a/b")))
|
||||
Expect(deleted).To(ConsistOf(P("a/b/c")))
|
||||
Expect(changed).To(ConsistOf(P("a/b")))
|
||||
|
||||
// Only returns changes after lastModifiedSince
|
||||
lastModifiedSince = time.Now()
|
||||
lastModifiedSince = nowWithDelay()
|
||||
newScanner := NewChangeDetector(testFolder)
|
||||
changed, deleted, err = newScanner.Scan(lastModifiedSince)
|
||||
Expect(err).To(BeNil())
|
||||
@@ -108,6 +108,13 @@ var _ = Describe("ChangeDetector", func() {
|
||||
changed, deleted, err = newScanner.Scan(lastModifiedSince)
|
||||
Expect(err).To(BeNil())
|
||||
Expect(deleted).To(BeEmpty())
|
||||
Expect(changed).To(ConsistOf(P("/a/b")))
|
||||
Expect(changed).To(ConsistOf(P("a/b")))
|
||||
})
|
||||
})
|
||||
|
||||
// I hate time-based tests....
|
||||
func nowWithDelay() time.Time {
|
||||
now := time.Now()
|
||||
time.Sleep(50 * time.Millisecond)
|
||||
return now
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user