示例#1
0
 public void Combine_06()
 {
     Assert.Throws <ArgumentOutOfRangeException>(() =>
     {
         var created = BCFv21Container.GetAbsolutePath("123456", "../../example.jpg");
     });
 }
        public static BCFv21Container CreateContainer()
        {
            var container = new BCFv21Container();

            container.Topics.Add(CreateTopic());
            return(container);
        }
示例#3
0
        /// <summary>
        ///     Will compare the project and version descriptions within the file
        /// </summary>
        /// <param name="expectedContainer"></param>
        /// <param name="actualContainer"></param>
        public static void CompareProjectAndVersion(BCFv21Container expectedContainer, BCFv21Container actualContainer)
        {
            // Compare project
            if (TestCompareUtilities.BothNotNullAndEmpty(expectedContainer.BcfProject, actualContainer.BcfProject, "BCFProject"))
            {
                if (TestCompareUtilities.BothNotNullAndEmpty(expectedContainer.BcfProject.Project, actualContainer.BcfProject.Project, "BCFProject.Project"))
                {
                    Assert.Equal(expectedContainer.BcfProject.Project.Name, actualContainer.BcfProject.Project.Name);
                    Assert.Equal(expectedContainer.BcfProject.Project.ProjectId, actualContainer.BcfProject.Project.ProjectId);
                }
                Assert.Equal(expectedContainer.BcfProject.ExtensionSchema, actualContainer.BcfProject.ExtensionSchema);
            }

            // Compare version
            if (TestCompareUtilities.BothNotNullAndEmpty(expectedContainer.BcfVersionInfo, actualContainer.BcfVersionInfo, "BCFVersionInfo"))
            {
                if (expectedContainer.BcfVersionInfo.VersionId.Contains("2.1"))
                {
                    Assert.Contains("2.1", actualContainer.BcfVersionInfo.VersionId);
                }
                else
                {
                    Assert.True(false, "Unrecognized VersionId");
                }
            }
        }
示例#4
0
            public void SetPathToExtensionsWhenExtensionsSet()
            {
                var instance = new BCFv21Container();

                instance.ProjectExtensions = new ProjectExtensions();
                Assert.Equal("extensions.xsd", instance.BcfProject.ExtensionSchema);
            }
示例#5
0
        public static BCFv21Container CreateContainer()
        {
            var container = new BCFv21Container();

            container.Topics.Add(CreateTopic());
            container.FileAttachments.Add("Estructura.ifc", TestCaseResourceFactory.GetIfcFile(IfcFiles.Estructura));
            return(container);
        }
示例#6
0
            public void Check_04()
            {
                var input    = "123/some.file";
                var expected = "some.file";
                var actual   = BCFv21Container.GetFilenameFromReference(input);

                Assert.Equal(expected, actual);
            }
示例#7
0
        public static BCFv21Container CreateContainer()
        {
            var container = new BCFv21Container();

            container.Topics.Add(CreateTopic());
            container.FileAttachments.Add("Requirements.pdf", TestCaseResourceFactory.GetFileAttachment(FileAttachments.RequirementsPdf));
            return(container);
        }
示例#8
0
            public void Create_10()
            {
                var inputAbsolute = "first/topic/none.jpg";
                var expected      = "first/topic/none.jpg";
                var created       = BCFv21Container.TransformToRelativePath(inputAbsolute, null);

                Assert.Equal(expected, created);
            }
示例#9
0
            public void Create_07()
            {
                var inputAbsolute   = "totally/different/folder/none.jpg";
                var inputCurrentLoc = "some/other/structure";
                var expected        = "../../../totally/different/folder/none.jpg";
                var created         = BCFv21Container.TransformToRelativePath(inputAbsolute, inputCurrentLoc);

                Assert.Equal(expected, created);
            }
示例#10
0
        public static void CompareFiles(byte[] fileToImport, byte[] readAndWrittenFile)
        {
            // Check that archive file contents are present
            ArchiveFilesCompareTool.CompareZipArchiveFileEntries(fileToImport, readAndWrittenFile);
            var expectedFile = BCFv21Container.ReadStream(new MemoryStream(fileToImport));
            var actualFile   = BCFv21Container.ReadStream(new MemoryStream(readAndWrittenFile));

            CompareContainers(expectedFile, actualFile, new ZipArchive(new MemoryStream(fileToImport)), new ZipArchive(new MemoryStream(readAndWrittenFile)));
        }
示例#11
0
            public void Create_11()
            {
                var inputAbsolute   = "first/topic/none.jpg";
                var inputCurrentLoc = "some/other/folder/dir/hello";
                var expected        = "../../../../../first/topic/none.jpg";
                var created         = BCFv21Container.TransformToRelativePath(inputAbsolute, inputCurrentLoc);

                Assert.Equal(expected, created);
            }
示例#12
0
            public void Create_09()
            {
                var inputAbsolute   = "first/topic/none.jpg";
                var inputCurrentLoc = string.Empty;
                var expected        = "first/topic/none.jpg";
                var created         = BCFv21Container.TransformToRelativePath(inputAbsolute, inputCurrentLoc);

                Assert.Equal(expected, created);
            }
示例#13
0
            public void Create_06()
            {
                var inputAbsolute   = "someFolder/nested/none.jpg";
                var inputCurrentLoc = "someFolder/nested";
                var expected        = "none.jpg";
                var created         = BCFv21Container.TransformToRelativePath(inputAbsolute, inputCurrentLoc);

                Assert.Equal(expected, created);
            }
示例#14
0
 /// <summary>
 /// </summary>
 /// <param name="expectedContainer"></param>
 /// <param name="actualContainer"></param>
 /// <param name="expectedArchive"></param>
 /// <param name="actualArchive"></param>
 /// <param name="originatesFromApiConversion">If true, Bitmaps are not compared since the API does not support them</param>
 public static void CompareAllTopics(BCFv21Container expectedContainer, BCFv21Container actualContainer, ZipArchive expectedArchive, ZipArchive actualArchive, bool originatesFromApiConversion)
 {
     foreach (var expectedTopic in expectedContainer.Topics)
     {
         // Make sure topic is present only one
         Assert.Single(actualContainer.Topics.Where(t => t.Markup.Topic.Guid == expectedTopic.Markup.Topic.Guid));
         var actualTopic = actualContainer.Topics.FirstOrDefault(t => t.Markup.Topic.Guid == expectedTopic.Markup.Topic.Guid);
         CompareSingleTopic(expectedTopic, actualTopic, expectedArchive, actualArchive, originatesFromApiConversion);
     }
 }
示例#15
0
 public Topic01()
 {
     if (ReadContainer == null)
     {
         ReadContainer = TestCaseResourceFactory.GetImportTestCaseContainerV21(BCFv21ImportTestCases.SingleVisibleSpace);
     }
     if (ReadTopic == null)
     {
         ReadTopic = ReadContainer.Topics.FirstOrDefault(curr => curr.Markup.Topic.Guid == "a3befb7d-8395-4e52-bbca-382fc4198217");
     }
 }
示例#16
0
 public ExtensionSchemaTest()
 {
     if (CreatedContainer == null)
     {
         CreatedContainer = BcfTestCaseFactory.GetContainerByTestName(TestCaseEnum.ExtensionSchema);
     }
     if (CreatedArchive == null)
     {
         CreatedArchive = ZipArchiveFactory.ReturnAndWriteIfRequired(CreatedContainer, BcFv21TestCaseData.EXTENSION_SCHEMA_TEST_CASE_NAME, TestCaseResourceFactory.GetReadmeForV21(BcfTestCaseV21.ExtensionSchema));
     }
 }
示例#17
0
            public void ExceptionOnExternalReference()
            {
                var container = new BCFv21Container();
                var docRef    = new TopicDocumentReference();

                docRef.isExternal = true;
                Assert.Throws <ArgumentException>(() =>
                {
                    var data = container.GetAttachmentForDocumentReference(docRef);
                });
            }
示例#18
0
 public Topic01()
 {
     if (ReadContainer == null)
     {
         ReadContainer = TestCaseResourceFactory.GetImportTestCaseContainerV21(BCFv21ImportTestCases.SingleInvisibleWall);
     }
     if (ReadTopic == null)
     {
         ReadTopic = ReadContainer.Topics.FirstOrDefault(curr => curr.Markup.Topic.Guid == "e1fff3a6-db0f-48e8-a240-0e2f38b2fc21");
     }
 }
示例#19
0
 public PdfFileTest()
 {
     if (CreatedContainer == null)
     {
         CreatedContainer = BcfTestCaseFactory.GetContainerByTestName(TestCaseEnum.PdfFile);
     }
     if (CreatedArchive == null)
     {
         CreatedArchive = ZipArchiveFactory.ReturnAndWriteIfRequired(CreatedContainer, BcFv21TestCaseData.PDF_FILE_TEST_CASE_NAME, TestCaseResourceFactory.GetReadmeForV21(BcfTestCaseV21.PDFFile));
     }
 }
示例#20
0
 public PerspectiveCameraTest()
 {
     if (CreatedContainer == null)
     {
         CreatedContainer = BcfTestCaseFactory.GetContainerByTestName(TestCaseEnum.PerspectiveCamera);
     }
     if (CreatedArchive == null)
     {
         CreatedArchive = ZipArchiveFactory.ReturnAndWriteIfRequired(CreatedContainer, BcFv21TestCaseData.PERSPECTIVE_CAMERA_TEST_CASE_NAME, TestCaseResourceFactory.GetReadmeForV21(BcfTestCaseV21.PerspectiveCamera));
     }
 }
示例#21
0
        //public const string TopicGuid = "9898DE65-C0CE-414B-857E-1DF97FFAED8D";

        public MinimumInformationTest()
        {
            if (CreatedContainer == null)
            {
                CreatedContainer = BcfTestCaseFactory.GetContainerByTestName(TestCaseEnum.MinimumInformation);
            }
            if (CreatedArchive == null)
            {
                CreatedArchive = ZipArchiveFactory.ReturnAndWriteIfRequired(CreatedContainer, BcFv21TestCaseData.MINIMUM_INFORMATION_TEST_CASE_NAME, TestCaseResourceFactory.GetReadmeForV21(BcfTestCaseV21.MinimumInformation));
            }
        }
示例#22
0
 public Topic01()
 {
     if (ReadContainer == null)
     {
         ReadContainer = TestCaseResourceFactory.GetImportTestCaseContainerV21(BCFv21ImportTestCases.SingleVisibleWall);
     }
     if (ReadTopic == null)
     {
         ReadTopic = ReadContainer.Topics.FirstOrDefault(curr => curr.Markup.Topic.Guid == "d029895e-2bdc-4f48-8bf4-8e540425f238");
     }
 }
示例#23
0
 public Topic01()
 {
     if (ReadContainer == null)
     {
         ReadContainer = TestCaseResourceFactory.GetImportTestCaseContainerV21(BCFv21ImportTestCases.RelatedTopicsWithOtherTopicMissing);
     }
     if (ReadTopic == null)
     {
         ReadTopic = ReadContainer.Topics.FirstOrDefault(curr => curr.Markup.Topic.Guid == "a6f801b9-6bf6-4cb9-8b89-1ae24b76074a");
     }
 }
示例#24
0
 public Topic01()
 {
     if (ReadContainer == null)
     {
         ReadContainer = TestCaseResourceFactory.GetImportTestCaseContainerV21(BCFv21ImportTestCases.UserAssignment);
     }
     if (ReadTopic == null)
     {
         ReadTopic = ReadContainer.Topics.FirstOrDefault(curr => curr.Markup.Topic.Guid == "12628303-e7a2-4c5c-bc3c-fb088fd24077");
     }
 }
示例#25
0
 public InternalBimSnippetTest()
 {
     if (CreatedContainer == null)
     {
         CreatedContainer = BcfTestCaseFactory.GetContainerByTestName(TestCaseEnum.InternalBimSnippet);
     }
     if (CreatedArchive == null)
     {
         CreatedArchive = ZipArchiveFactory.ReturnAndWriteIfRequired(CreatedContainer, BcFv21TestCaseData.INTERNAL_BIM_SNIPPET_TEST_CASE_NAME, TestCaseResourceFactory.GetReadmeForV21(BcfTestCaseV21.InternalBIMSnippet));
     }
 }
 public Topic02()
 {
     if (ReadContainer == null)
     {
         ReadContainer = TestCaseResourceFactory.GetImportTestCaseContainerV21(BCFv21ImportTestCases.RelatedTopicsWithBothTopicsInSameFile);
     }
     if (ReadTopic == null)
     {
         ReadTopic = ReadContainer.Topics.FirstOrDefault(curr => curr.Markup.Topic.Guid == "c69c8879-bd4a-4182-a759-f3c8c5b47c94");
     }
 }
示例#27
0
        public OrthogonalCameraTest()
        {
            if (CreatedContainer == null)
            {
                CreatedContainer = BcfTestCaseFactory.GetContainerByTestName(TestCaseEnum.OrthogonalCamera);
            }

            if (CreatedArchive == null)
            {
                CreatedArchive = ZipArchiveFactory.ReturnAndWriteIfRequired(CreatedContainer, BcFv21TestCaseData.ORTHOGONAL_CAMERA_TEST_CASE_NAME, TestCaseResourceFactory.GetReadmeForV21(BcfTestCaseV21.OrthogonalCamera));
            }
        }
示例#28
0
        public void AddviewpointSnapshotReferenceInMarkup()
        {
            var bcfContainer = new BCFv21Container();

            bcfContainer.Topics.Add(new BCFTopic());
            bcfContainer.Topics.First().Viewpoints.Add(new VisualizationInfo());

            bcfContainer.Topics.First().AddOrUpdateSnapshot(bcfContainer.Topics.First().Viewpoints.First().Guid, new byte[] { 10, 11, 12, 13, 14, 15 });

            Assert.False(string.IsNullOrWhiteSpace(bcfContainer.Topics.First().Markup.Viewpoints.FirstOrDefault().Snapshot),
                         "Reference not created for viewpoint snapshot");
        }
        public static BCFv21Container CreateContainer()
        {
            var container = new BCFv21Container();

            container.Topics.Add(new BCFTopic());
            container.Topics[0].Markup                      = new Markup();
            container.Topics[0].Markup.Topic.Guid           = BcFv21TestCaseData.MINIMUM_INFORMATION_TOPIC_GUID;
            container.Topics[0].Markup.Topic.Title          = "Minimum information BCFZip topic.";
            container.Topics[0].Markup.Topic.CreationAuthor = "*****@*****.**";
            container.Topics[0].Markup.Topic.CreationDate   = new DateTime(2015, 07, 15, 13, 12, 42, DateTimeKind.Utc);
            return(container);
        }
        public DocumentReferenceExternalTest()
        {
            if (CreatedContainer == null)
            {
                CreatedContainer = BcfTestCaseFactory.GetContainerByTestName(TestCaseEnum.DocumentReferenceExternal);
            }

            if (CreatedArchive == null)
            {
                CreatedArchive = ZipArchiveFactory.ReturnAndWriteIfRequired(CreatedContainer, BcFv21TestCaseData.DOCUMENT_REFERENCE_EXTERNAL_TEST_CASE_NAME, TestCaseResourceFactory.GetReadmeForV21(BcfTestCaseV21.DocumentReferenceExternal));
            }
        }