private IProgramsUnitOfWork GetUnit(List <ProgramUpdatePackageInfo> list, List <TelimenaPackageInfo> toolkitPackages = null) { UpdatePackageRepository pkgRepo = new UpdatePackageRepository(this.Context, new AssemblyStreamVersionReader()); ProgramRepository prgRepo = new ProgramRepository(this.Context); ProgramPackageRepository prgPkgRepo = new ProgramPackageRepository(this.Context, new AssemblyStreamVersionReader()); prgPkgRepo.Add(new ProgramPackageInfo("Prg.zip", this.Prg_1, "1.0.0.0", 2222, "1.0.0.0")); prgRepo.Add(new Program("prg", this.Program1Key) { Id = this.Prg_1 }); Mock <IAssemblyStreamVersionReader> reader = TestingUtilities.GetMockVersionReader(); this.AddToolkits(reader.Object, toolkitPackages); foreach (ProgramUpdatePackageInfo programUpdatePackageInfo in list) { pkgRepo.Add(programUpdatePackageInfo); } this.Context.SaveChanges(); ProgramsUnitOfWork unit = new ProgramsUnitOfWork(this.Context, reader.Object); return(unit); }
public static Mock <IAssemblyStreamVersionReader> GetMockVersionReader() { Mock <IAssemblyStreamVersionReader> reader = new Mock <IAssemblyStreamVersionReader>(); reader.Setup(x => x.GetFileVersion(It.IsAny <Stream>(), It.IsAny <string>(), It.IsAny <bool>())).Returns((Stream stream, string assName, bool singleFile) => { var str = TestingUtilities.ExtractString(stream); Assert.IsTrue(stream.CanRead); return(Task.FromResult(str)); }); return(reader); }
public void NoPackagesAvailable_ShouldNotThrowErrors() { ProgramRepository prgRepo = new ProgramRepository(this.Context); prgRepo.Add(new Program("prg", this.Program1Key) { Id = this.Prg_1 }); this.Context.SaveChanges(); IProgramsUnitOfWork unit = new ProgramsUnitOfWork(this.Context, TestingUtilities.GetMockVersionReader().Object); ProgramsController sut = new ProgramsController(unit, new Mock <IFileSaver>().Object, new Mock <IFileRetriever>().Object); UpdateRequest request = new UpdateRequest(this.Program1Key, new VersionData("", "1.2.0.0"), this.User1Guid, false, "0.7.0.0", "1.0.0.0"); UpdateResponse result = sut.UpdateCheck(request).GetAwaiter().GetResult(); Assert.AreEqual(0, result.UpdatePackages.Count()); Assert.IsNull(result.Exception); }
public static void SetIp(ApiController controller, string ip) { Mock <HttpRequestBase> request = new Mock <HttpRequestBase>(); // Not working - IsAjaxRequest() is static extension method and cannot be mocked // request.Setup(x => x.IsAjaxRequest()).Returns(true /* or false */); // use this request.SetupGet(x => x.UserHostAddress).Returns(ip); //var ctx = new Mock<HttpContextWrapper>(); //ctx.SetupGet(x => x.Request).Returns(request.Object); Mock <HttpContextBase> mockContext = new Mock <HttpContextBase>(); mockContext.SetupAllProperties(); mockContext.Setup(c => c.Request).Returns(request.Object); TestingUtilities.SetReuqest(controller, HttpMethod.Post, new Dictionary <string, object>() { { "MS_HttpContext", mockContext.Object } }); }
private void AddToolkits(IAssemblyStreamVersionReader reader, List <TelimenaPackageInfo> toolkitPackages = null) { this.toolkitPackageGuids = new List <Guid>(); var toolkitRepo = new ToolkitDataRepository(this.Context, reader); if (toolkitPackages == null) { toolkitPackageGuids.Add(toolkitRepo.StorePackageAsync(isBeta: false, introducesBreakingChanges: false, fileStream: TestingUtilities.GenerateStream("0.5.0.0"), fileSaver: new Mock <IFileSaver>().Object).GetAwaiter().GetResult().PublicId); toolkitPackageGuids.Add(toolkitRepo.StorePackageAsync(isBeta: false, introducesBreakingChanges: false, fileStream: TestingUtilities.GenerateStream("0.7.0.0"), fileSaver: new Mock <IFileSaver>().Object).GetAwaiter().GetResult().PublicId); toolkitPackageGuids.Add(toolkitRepo.StorePackageAsync(isBeta: false, introducesBreakingChanges: false, fileStream: TestingUtilities.GenerateStream("1.0.0.0"), fileSaver: new Mock <IFileSaver>().Object).GetAwaiter().GetResult().PublicId); toolkitPackageGuids.Add(toolkitRepo.StorePackageAsync(isBeta: true, introducesBreakingChanges: false, fileStream: TestingUtilities.GenerateStream("1.2.0.0"), fileSaver: new Mock <IFileSaver>().Object).GetAwaiter().GetResult().PublicId); toolkitPackageGuids.Add(toolkitRepo.StorePackageAsync(isBeta: false, introducesBreakingChanges: true, fileStream: TestingUtilities.GenerateStream("1.4.0.0"), fileSaver: new Mock <IFileSaver>().Object).GetAwaiter().GetResult().PublicId); toolkitPackageGuids.Add(toolkitRepo.StorePackageAsync(isBeta: true, introducesBreakingChanges: false, fileStream: TestingUtilities.GenerateStream("1.6.0.0"), fileSaver: new Mock <IFileSaver>().Object).GetAwaiter().GetResult().PublicId); toolkitPackageGuids.Add(toolkitRepo.StorePackageAsync(isBeta: true, introducesBreakingChanges: true, fileStream: TestingUtilities.GenerateStream("1.8.0.0"), fileSaver: new Mock <IFileSaver>().Object).GetAwaiter().GetResult().PublicId); toolkitPackageGuids.Add(toolkitRepo.StorePackageAsync(isBeta: true, introducesBreakingChanges: false, fileStream: TestingUtilities.GenerateStream("2.0.0.0"), fileSaver: new Mock <IFileSaver>().Object).GetAwaiter().GetResult().PublicId); } }