Exemple #1
0
            public async Task NewNamespaceIsReservedCorrectly(string value, bool isShared, bool isPrefix)
            {
                var newNamespace = new ReservedNamespace(value, isSharedNamespace: isShared, isPrefix: isPrefix);

                var service = new TestableReservedNamespaceService();
                await service.AddReservedNamespaceAsync(newNamespace);

                service.MockReservedNamespaceRepository.Verify(
                    x => x.InsertOnCommit(
                        It.Is <ReservedNamespace>(
                            rn => rn.Value == newNamespace.Value &&
                            rn.IsPrefix == newNamespace.IsPrefix &&
                            rn.IsSharedNamespace == newNamespace.IsSharedNamespace)));

                service.MockReservedNamespaceRepository.Verify(x => x.CommitChangesAsync());
            }
Exemple #2
0
            public async Task LiberalNamespaceForExactMatchIsAllowed()
            {
                var testNamespaces = ReservedNamespaceServiceTestData.GetTestNamespaces();
                // test case has a namespace with "Microsoft." as the value.
                var newNamespace = new ReservedNamespace("Micro", isSharedNamespace: false, isPrefix: false /*exact match*/);
                var service      = new TestableReservedNamespaceService(reservedNamespaces: testNamespaces);

                await service.AddReservedNamespaceAsync(newNamespace);

                service.MockReservedNamespaceRepository.Verify(
                    x => x.InsertOnCommit(
                        It.Is <ReservedNamespace>(
                            rn => rn.Value == newNamespace.Value &&
                            rn.IsPrefix == newNamespace.IsPrefix &&
                            rn.IsSharedNamespace == newNamespace.IsSharedNamespace)));

                service.MockReservedNamespaceRepository.Verify(x => x.CommitChangesAsync());
            }
Exemple #3
0
            public async Task RestrictiveNamespaceUnderPrivateNamespacesIsMarkedAsAppropriate(bool isSharedNamespace)
            {
                var namespaces = new List <ReservedNamespace> {
                    new ReservedNamespace("xunit.", isSharedNamespace: false, isPrefix: true),
                    new ReservedNamespace("xunit.extentions.", isSharedNamespace: false, isPrefix: true),
                };

                var newNamespace = new ReservedNamespace("xunit.extentions.someuser.", isSharedNamespace, isPrefix: true);

                var service = new TestableReservedNamespaceService(reservedNamespaces: namespaces);
                await service.AddReservedNamespaceAsync(newNamespace);

                service.MockReservedNamespaceRepository.Verify(
                    x => x.InsertOnCommit(
                        It.Is <ReservedNamespace>(
                            rn => rn.Value == newNamespace.Value &&
                            rn.IsPrefix == newNamespace.IsPrefix &&
                            rn.IsSharedNamespace == isSharedNamespace)));

                service.MockReservedNamespaceRepository.Verify(x => x.CommitChangesAsync());
            }
Exemple #4
0
 public async Task EmptyOrNullNamespaceThrowsException(string value)
 {
     var service      = new TestableReservedNamespaceService();
     var addNamespace = new ReservedNamespace(value, isSharedNamespace: false, isPrefix: true);
     await Assert.ThrowsAsync <ArgumentException>(async() => await service.AddReservedNamespaceAsync(addNamespace));
 }
Exemple #5
0
            public async Task LiberalNamespaceThrowsException()
            {
                var testNamespaces = ReservedNamespaceServiceTestData.GetTestNamespaces();
                // test case has a namespace with "Microsoft." as the value.
                var newNamespace = new ReservedNamespace("Micro", isSharedNamespace: false, isPrefix: true);
                var service      = new TestableReservedNamespaceService(reservedNamespaces: testNamespaces);

                await Assert.ThrowsAsync <InvalidOperationException>(async() => await service.AddReservedNamespaceAsync(newNamespace));
            }
Exemple #6
0
            public async Task ExistingNamespaceWithDifferentPrefixStateThrowsException()
            {
                var testNamespaces = ReservedNamespaceServiceTestData.GetTestNamespaces();
                var newNamespace   = testNamespaces.FirstOrDefault(x => x.Value == "jquery");

                newNamespace.IsPrefix = !newNamespace.IsPrefix;
                var service = new TestableReservedNamespaceService(reservedNamespaces: testNamespaces);

                await Assert.ThrowsAsync <InvalidOperationException>(async() => await service.AddReservedNamespaceAsync(newNamespace));
            }
Exemple #7
0
            public async Task ExistingNamespaceThrowsException()
            {
                var testNamespaces = ReservedNamespaceServiceTestData.GetTestNamespaces();
                var newNamespace   = testNamespaces.FirstOrDefault();
                var service        = new TestableReservedNamespaceService(reservedNamespaces: testNamespaces);

                await Assert.ThrowsAsync <InvalidOperationException>(async() => await service.AddReservedNamespaceAsync(newNamespace));
            }