public void ComposePackageResourceUrl_ValidInputs(string baseAddress, string packageId, string packageVersion, string filename, string expectedAddress)
        {
            // Arrange
            Uri baseUri = new Uri(baseAddress);
            MemoryStorage storage = new MemoryStorage(baseUri);

            // Act
            Uri registrationUri = storage.ComposePackageResourceUrl(packageId, packageVersion, filename);

            // Assert
            Uri expectedUri = new Uri(expectedAddress);
            Assert.True(registrationUri.Equals(expectedUri));
        }
        public void ComposePackageResourceUrl_InvalidInputs(string baseAddress, string packageId, string packageVersion, string filename, string expectedAddress, Type expectedException)
        {
            // Arrange
            Uri baseUri = new Uri(baseAddress);
            MemoryStorage storage = new MemoryStorage(baseUri);

            // Act
            Action action = delegate
            {
                Uri registrationUri = storage.ComposePackageResourceUrl(packageId, packageVersion, filename);
            };

            // Assert
            Assert.Throws(expectedException, action);
        }