/// <summary> /// Check if everything is cleaned up. /// </summary> public void IsolatedRazorEngineService_CleanUpWorks() { var appDomain = SandboxCreator(); using (var service = IsolatedRazorEngineService.Create(() => appDomain)) { string template = @"@Model.Name"; var result = service.RunCompile(template, "test", null, new { Name = "test" }); Assert.AreEqual("test", result); ObjectHandle handle = Activator.CreateInstanceFrom( appDomain, typeof(AssemblyChecker).Assembly.ManifestModule.FullyQualifiedName, typeof(AssemblyChecker).FullName ); using (var localHelper = new AssemblyChecker()) { Assert.False(localHelper.ExistsCompiledAssembly()); } using (var remoteHelper = (AssemblyChecker)handle.Unwrap()) { Assert.IsTrue(remoteHelper.ExistsCompiledAssembly()); } } Assert.Throws <AppDomainUnloadedException>(() => { Console.WriteLine(appDomain.FriendlyName); }); using (var localHelper = new AssemblyChecker()) { Assert.False(localHelper.ExistsCompiledAssembly()); } }
private void PlayButton_Click(object sender, RoutedEventArgs e) { Thread.CurrentThread.CurrentUICulture = CultureInfo.InvariantCulture; string result; try { result = new AssemblyChecker().GetMissingAssemblies(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error! Failed to Get Missing Assemblies", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (result == null) { new PlayerNameWindow().Show(); Close(); } else { MessageBox.Show($"These files are missing:{Environment.NewLine}{result}", "Error! Failed to Find Files", MessageBoxButton.OK, MessageBoxImage.Error); } }
public void CodeCheck_WithBlackList() { _checker = new AssemblyChecker(new [] { "Google.Protobuf" }, null); var code = ReadCode(typeof(TestContract.TestContract).Assembly.Location); Should.Throw <InvalidCodeException>(() => _checker.CodeCheck(code, true)); }
// Constructor private ScriptDomain(string name) { // Store the domain instance domain = this; // Create the app domain sandbox = AppDomain.CurrentDomain; // Create a security checker checker = new AssemblyChecker(); }
public void IsolatedRazorEngineService_CleanUpWorks() { var appDomain = SandboxCreator(); using (var service = IsolatedRazorEngineService.Create(() => appDomain)) { string template = @"@Model.Name"; var result = service.RunCompile(template, "test", null, new { Name = "test" }); Assert.AreEqual("test", result); ObjectHandle handle = Activator.CreateInstanceFrom( appDomain, typeof(AssemblyChecker).Assembly.ManifestModule.FullyQualifiedName, typeof(AssemblyChecker).FullName ); using (var localHelper = new AssemblyChecker()) { Assert.False(localHelper.ExistsCompiledAssembly()); } using (var remoteHelper = (AssemblyChecker)handle.Unwrap()) { Assert.IsTrue(remoteHelper.ExistsCompiledAssembly()); } } Assert.Throws<AppDomainUnloadedException>(() => { Console.WriteLine(appDomain.FriendlyName); }); using (var localHelper = new AssemblyChecker()) { Assert.False(localHelper.ExistsCompiledAssembly()); } }
public AssebmlyCheckerTests() { _checker = new AssemblyChecker(null, null); }