public void ProvideBindingRedirectionAttribute_DontMatchOutOfBounds()
            {
                var asm                       = Assembly.GetExecutingAssembly();
                var assemblyName              = asm.GetName().Name;
                var codeBase                  = $"$PackageFolder$\\{assemblyName}.dll";
                var oldVersionLowerBound      = "0.0.0.0";
                var oldVersionUpperBound      = "1.1.1.1";
                var resolveVersion            = new Version("2.2.2.2");
                var provideBindingRedirection = new ProvideBindingRedirectionAttribute
                {
                    AssemblyName         = assemblyName,
                    CodeBase             = codeBase,
                    OldVersionLowerBound = oldVersionLowerBound,
                    OldVersionUpperBound = oldVersionUpperBound
                };
                var dependentAssemblies = new[] { provideBindingRedirection };
                var packageFolder       = Path.GetDirectoryName(asm.Location);
                var resolveAssemblyName = asm.GetName();

                resolveAssemblyName.Version = resolveVersion;

                var resolvedAssembly = AssemblyResolverPackage.ResolveDependentAssembly(provideBindingRedirection, packageFolder, resolveAssemblyName);

                Assert.Null(resolvedAssembly);
            }
示例#2
0
 public ProvideCodeBaseBindingRedirectionAttribute(string assemblyName)
 {
     // ProvideBindingRedirectionAttribute is sealed, so we can't inherit from it to provide defaults.
     // Instead, we'll do more of an aggregation pattern here.
     _redirectionAttribute = new ProvideBindingRedirectionAttribute
     {
         AssemblyName         = assemblyName,
         OldVersionLowerBound = "0.0.0.0",
         CodeBase             = assemblyName + ".dll",
     };
 }
示例#3
0
 public ProvideDependencyBindingRedirectionAttribute(string fileName)
 {
     // ProvideBindingRedirectionAttribute is sealed, so we can't inherit from it to provide defaults.
     // Instead, we'll do more of an aggregation pattern here.
     // Note that PublicKeyToken, NewVersion and OldVersionUpperBound are read from the actual assembly version of the dll.
     _redirectionAttribute = new ProvideBindingRedirectionAttribute {
         AssemblyName         = Path.GetFileNameWithoutExtension(fileName),
         OldVersionLowerBound = "0.0.0.0",
         CodeBase             = fileName,
     };
 }
 public ProvideInteractiveWindowBindingRedirectionAttribute(string fileName)
 {
     // ProvideBindingRedirectionAttribute is sealed, so we can't inherit from it to provide defaults.
     // Instead, we'll do more of an aggregation pattern here.
     // Note that PublicKeyToken, NewVersion and OldVersionUpperBound are read from the actual assembly version of the dll.
     _redirectionAttribute = new ProvideBindingRedirectionAttribute
     {
         AssemblyName = Path.GetFileNameWithoutExtension(fileName),
         OldVersionLowerBound = "0.0.0.0",
         CodeBase = fileName,
     };
 }
 public ProvideRoslynBindingRedirectionAttribute(string fileName)
 {
     // ProvideBindingRedirectionAttribute is sealed, so we can't inherit from it to provide defaults.
     // Instead, we'll do more of an aggregation pattern here.
     _redirectionAttribute = new ProvideBindingRedirectionAttribute
     {
         AssemblyName = Path.GetFileNameWithoutExtension(fileName),
         PublicKeyToken = "31BF3856AD364E35",
         OldVersionLowerBound = "0.7.0.0",
         OldVersionUpperBound = "2.0.0.0",
         CodeBase = fileName,
     };
 }
 public ProvideRoslynBindingRedirectionAttribute(string fileName)
 {
     // ProvideBindingRedirectionAttribute is sealed, so we can't inherit from it to provide defaults.
     // Instead, we'll do more of an aggregation pattern here.
     _redirectionAttribute = new ProvideBindingRedirectionAttribute
     {
         AssemblyName         = Path.GetFileNameWithoutExtension(fileName),
         PublicKeyToken       = "31BF3856AD364E35",
         OldVersionLowerBound = "0.7.0.0",
         OldVersionUpperBound = "1.3.0.0",
         CodeBase             = fileName,
     };
 }
示例#7
0
        public ProvideRoslynBindingRedirectionAttribute(string assemblyName)
        {
            // ProvideBindingRedirectionAttribute is sealed, so we can't inherit from it to provide defaults.
            // Instead, we'll do more of an aggregation pattern here.
            _redirectionAttribute = new ProvideBindingRedirectionAttribute
            {
                AssemblyName         = assemblyName,
                PublicKeyToken       = "31BF3856AD364E35",
                OldVersionLowerBound = "0.7.0.0",
                OldVersionUpperBound = "1.2.0.0",

#if OFFICIAL_BUILD
                // If this is an official build we want to generate binding
                // redirects from our old versions to the release version
                NewVersion = "1.2.0.0",
#else
                // Non-official builds get redirects to local 42.42.42.42,
                // which will only be built locally
                NewVersion = "42.42.42.42",
#endif

                GenerateCodeBase = GenerateCodeBase,
            };
        }
        public ProvideRoslynBindingRedirectionAttribute(string assemblyName)
        {
            // ProvideBindingRedirectionAttribute is sealed, so we can't inherit from it to provide defaults.
            // Instead, we'll do more of an aggregation pattern here.
            _redirectionAttribute = new ProvideBindingRedirectionAttribute
            {
                AssemblyName = assemblyName,
                PublicKeyToken = "31BF3856AD364E35",
                OldVersionLowerBound = "0.7.0.0",
                OldVersionUpperBound = "1.2.0.0",

#if OFFICIAL_BUILD
                // If this is an official build we want to generate binding
                // redirects from our old versions to the release version 
                NewVersion = "1.2.0.0",
#else
                // Non-official builds get redirects to local 42.42.42.42,
                // which will only be built locally
                NewVersion = "42.42.42.42",
#endif

                GenerateCodeBase = GenerateCodeBase,
            };
        }