Address comment · microsoft/VSConfigFinder@c345346 (original) (raw)

``

1

`+

//

`

``

2

`+

// Copyright (C) Microsoft Corporation. All rights reserved.

`

``

3

`+

// Licensed under the MIT license. See LICENSE.txt in the project root for license information.

`

``

4

`+

//

`

``

5

+

``

6

`+

namespace VSConfigFinder.Test

`

``

7

`+

{

`

``

8

`+

using Moq;

`

``

9

`+

using Xunit;

`

``

10

+

``

11

`+

public class ExtensionsTests

`

``

12

`+

{

`

``

13

`+

[Fact]

`

``

14

`+

public void GetFileSystemEntries_MultiplePaths_ReturnSet()

`

``

15

`+

{

`

``

16

`+

var path1 = "C:\path1";

`

``

17

`+

var subpath1 = Path.Combine(path1, "subpath1", ".vsconfig");

`

``

18

`+

var subpath2 = Path.Combine(path1, "subpath2", "something.vsconfig");

`

``

19

`+

var path2 = "C:\path2";

`

``

20

`+

var subpath3 = Path.Combine(path2, "subpath3", ".vsconfig");

`

``

21

`+

var subpath4 = Path.Combine(path2, "subpath4", "something.vsconfig");

`

``

22

`+

var path3 = path2;

`

``

23

`+

var subpath5 = subpath3;

`

``

24

`+

var subpath6 = subpath4;

`

``

25

+

``

26

`+

var fileSystem = new Mock();

`

``

27

`+

fileSystem.Setup(x => x.GetFileSystemEntries(path1, "*.vsconfig", true)).Returns(new[] { subpath1, subpath2 });

`

``

28

`+

fileSystem.Setup(x => x.GetFileSystemEntries(path2, "*.vsconfig", true)).Returns(new[] { subpath3, subpath4 });

`

``

29

`+

fileSystem.Setup(x => x.GetFileSystemEntries(path3, "*.vsconfig", true)).Returns(new[] { subpath5, subpath6 });

`

``

30

+

``

31

`+

var paths = new[] { path1, path2, path3 };

`

``

32

+

``

33

`+

var result = Extensions.GetFileSystemEntries(fileSystem.Object, paths, "*.vsconfig", recursive: true);

`

``

34

+

``

35

`+

Assert.Equal(4, result.Count());

`

``

36

`+

Assert.Contains(subpath1, result);

`

``

37

`+

Assert.Contains(subpath2, result);

`

``

38

`+

Assert.Contains(subpath3, result);

`

``

39

`+

Assert.Contains(subpath4, result);

`

``

40

`+

}

`

``

41

`+

}

`

``

42

`+

}

`