示例#1
0
            public MockFolder AddFolder(string name)
            {
                var result = new MockFolder(_Provider, this, name);

                Contents.Add(result);

                return(result);
            }
示例#2
0
        void GenerateMockConfiguration()
        {
            var generator = new MockConfigurationClassGenerator(Context.ControllerType);

            Console.Write($"Adding class {Context.ControllerName}MockConfiguration");
            MockFolder.GetFile($"{Context.ControllerName}MockConfiguration.cs").WriteAllText(generator.Generate());
            Console.WriteLine("Done");
        }
示例#3
0
        /// <summary>
        /// Returns the folder at the path specified.
        /// </summary>
        /// <param name="path"></param>
        /// <param name="throwIfNotFound"></param>
        /// <returns></returns>
        private MockFolder FindFolder(string path, bool throwIfNotFound = false)
        {
            MockFolder result = null;

            FollowPathAndPerformActionOnFolder(path, folder => {
                result = folder;
            }, throwIfNotFound);

            if (result == null && throwIfNotFound)
            {
                throw new DirectoryNotFoundException($"{path} cannot be found");
            }

            return(result);
        }
示例#4
0
        protected override void AddFiles()
        {
            Console.Write("Adding the proxy class...");
            Folder.GetFile($"{Context.ControllerName}.cs").WriteAllText(ProxyClassProgrammer.Generate());
            Console.WriteLine("Done");
            Console.Write("Adding the proxy class mock configuration...");
            MockFolder.GetFile($"{Context.ControllerName}.Mock.cs").WriteAllText(ProxyClassProgrammer.GenerateMock());
            Console.WriteLine("Done");
            Console.Write("Adding ReamMe.txt file ...");
            Folder.GetFile("README.txt").WriteAllText(ReadmeFileGenerator.Generate());
            Console.WriteLine("Done");

            GenerateEnums();
            GenerateDtoClasses();
            GenerateDataProviderClasses();
            GenerateMockConfiguration();
        }
示例#5
0
            public MockFile(MockFileSystemProvider owner, MockFolder parentFolder, string name, byte[] content) : base(owner, parentFolder, name)
            {
                switch (name)
                {
                case ".":
                case "..":
                    throw new ArgumentException($"{name} is not a valid file name");

                default:
                    if (name.Trim().Length == 0 || name.IndexOfAny(Path.GetInvalidFileNameChars()) != -1)
                    {
                        throw new ArgumentException($"{name} is not a valid file name");
                    }
                    break;
                }

                Content = content;
            }
示例#6
0
            public MockFolder(MockFileSystemProvider owner, MockFolder parent, string name) : base(owner, parent, name)
            {
                switch (name)
                {
                case ".":
                case "..":
                    throw new ArgumentException($"{name} is not a valid directory name");

                case "":
                    if (parent != null)
                    {
                        throw new ArgumentException("The folder name cannot be empty");
                    }
                    break;

                default:
                    if (name.IndexOfAny(Path.GetInvalidPathChars()) != -1)
                    {
                        throw new ArgumentException($"{name} contains invalid path characters");
                    }
                    break;
                }
            }
示例#7
0
 public MockFile(MockFileSystemProvider owner, MockFolder parentFolder, string name) : this(owner, parentFolder, name, new byte[0])
 {
 }
示例#8
0
 public MockFileSystemEntity(MockFileSystemProvider provider, MockFolder parentFolder, string name)
 {
     _Provider    = provider;
     ParentFolder = parentFolder;
     Name         = name;
 }
示例#9
0
 /// <summary>
 /// Resets the mock file system.
 /// </summary>
 public void Reset()
 {
     _Root = new MockFolder(this, null, "");
 }