Guest User

Untitled

a guest
Jul 22nd, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.95 KB | None | 0 0
  1. var asm = new FakeAssembly(x => {
  2. x.AddResource("foo", "bar");
  3. x.AddResource("bar", "foo");
  4. });
  5.  
  6. public class FakeAssembly : Assembly
  7. {
  8. private readonly NameValueCollection resources = new NameValueCollection();
  9.  
  10. public FakeAssembly()
  11. {
  12. }
  13.  
  14. public FakeAssembly(Action<FakeAssemblyConfigurator> closure)
  15. {
  16. var configurator =
  17. new FakeAssemblyConfigurator(this);
  18.  
  19. closure.Invoke(configurator);
  20. }
  21.  
  22. public override string[] GetManifestResourceNames()
  23. {
  24. return this.resources.AllKeys;
  25. }
  26.  
  27. public class FakeAssemblyConfigurator
  28. {
  29. private readonly FakeAssembly assembly;
  30.  
  31. public FakeAssemblyConfigurator(FakeAssembly assembly)
  32. {
  33. this.assembly = assembly;
  34. }
  35.  
  36. public FakeAssemblyConfigurator AddResource(string name, string value)
  37. {
  38. this.assembly.resources.Add(name, value);
  39. return this;
  40. }
  41. }
  42. }
Add Comment
Please, Sign In to add comment