From 5ed8ddc65c92ab958d2359bed2dcae6c1e715ea2 Mon Sep 17 00:00:00 2001 From: Stephen Celis Date: Tue, 8 Jan 2019 10:32:20 -0500 Subject: [PATCH] Add debugRender and HtmlSnapshotTesting (#29) * Add debugRender and HtmlSnapshotTesting * Check out submodules * Fix Package.swift * Explicit * Fix Linux * Update HtmlSnapshotTestingTests.swift * Update README.md * Update README.md * Update README.md * Update Makefile * Update README.md * Update HtmlSnapshotTesting.podspec * Update HtmlSnapshotTesting.podspec * Bump --- .circleci/config.yml | 11 +- .gitmodules | 3 + Cartfile | 1 + Cartfile.resolved | 1 + Carthage/Checkouts/swift-snapshot-testing | 1 + Html.podspec | 36 + Html.xcodeproj/project.pbxproj | 1362 ++++++++++++++--- .../HtmlSnapshotTesting_iOS.xcscheme | 106 ++ .../HtmlSnapshotTesting_macOS.xcscheme | 106 ++ .../HtmlSnapshotTesting_tvOS.xcscheme | 106 ++ .../HtmlSnapshotTesting_watchOS.xcscheme | 106 ++ Html.xcworkspace/contents.xcworkspacedata | 19 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + HtmlSnapshotTesting.podspec | 35 + Makefile | 5 + Package.swift | 12 + README.md | 16 + Sources/Html/DebugRender.swift | 67 + .../HtmlSnapshotTesting.swift | 15 + .../HtmlSnapshotTestingTests.swift | 211 +++ .../testSnapshots.1.html | 357 +++++ project.yml | 50 +- 22 files changed, 2411 insertions(+), 223 deletions(-) create mode 100644 .gitmodules create mode 100644 Cartfile create mode 100644 Cartfile.resolved create mode 160000 Carthage/Checkouts/swift-snapshot-testing create mode 100644 Html.podspec create mode 100644 Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_iOS.xcscheme create mode 100644 Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_macOS.xcscheme create mode 100644 Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_tvOS.xcscheme create mode 100644 Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_watchOS.xcscheme create mode 100644 Html.xcworkspace/contents.xcworkspacedata create mode 100644 Html.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 HtmlSnapshotTesting.podspec create mode 100644 Sources/Html/DebugRender.swift create mode 100644 Sources/HtmlSnapshotTesting/HtmlSnapshotTesting.swift create mode 100644 Tests/HtmlSnapshotTestingTests/HtmlSnapshotTestingTests.swift create mode 100644 Tests/HtmlSnapshotTestingTests/__Snapshots__/HtmlSnapshotTestingTests/testSnapshots.1.html diff --git a/.circleci/config.yml b/.circleci/config.yml index dbe3b7a..ba787c7 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -13,11 +13,18 @@ jobs: command: system_profiler SPSoftwareDataType - run: - name: Print Devices + name: Simulator Info command: instruments -s devices + - run: + name: Check out dependencies + command: git submodule update --init --recursive + - run: name: Run Swift tests command: make test-swift environment: - SNAPSHOT_ARTIFACTS: $CIRCLE_ARTIFACTS + SNAPSHOT_ARTIFACTS: /tmp/__SnapshotArtifacts__ + + - store_artifacts: + path: /tmp/__SnapshotArtifacts__ diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..95ae4e6 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "Carthage/Checkouts/swift-snapshot-testing"] + path = Carthage/Checkouts/swift-snapshot-testing + url = https://github.com/pointfreeco/swift-snapshot-testing.git diff --git a/Cartfile b/Cartfile new file mode 100644 index 0000000..8add024 --- /dev/null +++ b/Cartfile @@ -0,0 +1 @@ +github "pointfreeco/swift-snapshot-testing" ~> 1.1.0 diff --git a/Cartfile.resolved b/Cartfile.resolved new file mode 100644 index 0000000..9bd3d1d --- /dev/null +++ b/Cartfile.resolved @@ -0,0 +1 @@ +github "pointfreeco/swift-snapshot-testing" "1.1.0" diff --git a/Carthage/Checkouts/swift-snapshot-testing b/Carthage/Checkouts/swift-snapshot-testing new file mode 160000 index 0000000..129e393 --- /dev/null +++ b/Carthage/Checkouts/swift-snapshot-testing @@ -0,0 +1 @@ +Subproject commit 129e393c6d17f7f6490fa212f19ae0d558bbd5dc diff --git a/Html.podspec b/Html.podspec new file mode 100644 index 0000000..bd986c4 --- /dev/null +++ b/Html.podspec @@ -0,0 +1,36 @@ +Pod::Spec.new do |s| + s.name = "Html" + s.version = "0.1.3" + s.summary = "A Swift DSL for type-safe, extensible, and transformable HTML documents." + + s.description = <<-DESC + The popular choice for rendering HTML in Swift these days is to use + templating languages, but they expose your application to runtime errors and + invalid HTML. Our library prevents these runtime issues at compile-time by + embedding HTML directly into Swift’s powerful type system. + DESC + + s.homepage = "https://github.com/pointfreeco/swift-html" + + s.license = "MIT" + + s.authors = { + "Stephen Celis" => "stephen@stephencelis.com", + "Brandon Williams" => "mbw234@gmail.com" + } + s.social_media_url = "https://twitter.com/pointfreeco" + + s.source = { + :git => "https://github.com/pointfreeco/swift-html.git", + :tag => s.version + } + + s.swift_version = "4.2.1" + + s.ios.deployment_target = "8.0" + s.osx.deployment_target = "10.9" + s.tvos.deployment_target = "9.0" + s.watchos.deployment_target = "2.0" + + s.source_files = "Sources/Html/**/*.swift" +end diff --git a/Html.xcodeproj/project.pbxproj b/Html.xcodeproj/project.pbxproj index 463f407..32b14e2 100644 --- a/Html.xcodeproj/project.pbxproj +++ b/Html.xcodeproj/project.pbxproj @@ -7,133 +7,457 @@ objects = { /* Begin PBXBuildFile section */ - BF_00916079FF66FC0D646680666A7CD0E9 /* ElementsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_31451D3CFCD7B04EC4D63F72F9128FC1 /* ElementsTests.swift */; }; - BF_01CDA31EAA4E348D07A56D90CE4C1914 /* ElementsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_31451D3CFCD7B04EC4D63F72F9128FC1 /* ElementsTests.swift */; }; - BF_03A2EED843F90FA8E41B58C48D394F88 /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_677B99ED8217F43EF3C12EA7E42E5E41 /* AttributesTests.swift */; }; - BF_04DC74D1E8547CA689F92509E6688688 /* EventsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_E4041CB4F38F966E11BD91C0AA6A5BFA /* EventsTests.swift */; }; - BF_060C5A042E40BDCF757B2476C9391E9A /* AriaTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_F75FACFFE0F0DA991D69CCC9C0698FEC /* AriaTests.swift */; }; - BF_1601D2201CCCC901FF48A5EE027F86D1 /* Events.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_BC6D52A984AA8579A5E685CDB96DF92B /* Events.swift */; }; - BF_1C9B40A0FC0ABC5FB5AB7C0DEB9648BD /* MediaTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_C83B72C4B65C28F6BE37D5682CA77D3A /* MediaTypeTests.swift */; }; - BF_281A2C56D0B5DEAF6FF479602768DA21 /* Aria.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_1957C0F2CF49A306AA5402A17F204E13 /* Aria.swift */; }; - BF_3D30C002A4DB359E1190590A0E06CF26 /* Html4.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_24FF729FC7DFE8D83700385CA1131573 /* Html4.swift */; }; - BF_47AE237A21EB80E5615A255CABAE548D /* Aria.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_1957C0F2CF49A306AA5402A17F204E13 /* Aria.swift */; }; - BF_49A551264360C1045B7CE1449A8A0F92 /* Render.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_9193E6DDB0F9A5361B5E2B130EC79A0C /* Render.swift */; }; - BF_4AB73F0371B126D2BC8A23346599915F /* Events.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_BC6D52A984AA8579A5E685CDB96DF92B /* Events.swift */; }; - BF_52C766E312455A9F21C4FE31F22E1DBA /* MediaTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_C83B72C4B65C28F6BE37D5682CA77D3A /* MediaTypeTests.swift */; }; - BF_53549900846231225D3F60015E999C3C /* Events.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_BC6D52A984AA8579A5E685CDB96DF92B /* Events.swift */; }; - BF_55BF1F4394531240992F88B1AC5449FE /* ElementsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_31451D3CFCD7B04EC4D63F72F9128FC1 /* ElementsTests.swift */; }; - BF_56E1E895F20B959BF2F4B380009EB538 /* Node.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_11FBC77AD82B31BCEF6FB0320AC5E0DC /* Node.swift */; }; - BF_57EC010E3B6C49C2849F73130B767F26 /* Html4.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_24FF729FC7DFE8D83700385CA1131573 /* Html4.swift */; }; - BF_58E594B36913E4269F408F3FB239DC23 /* Html4.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_24FF729FC7DFE8D83700385CA1131573 /* Html4.swift */; }; - BF_5A020B56A2DD08EA1773BA802C41ABEA /* AriaTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_F75FACFFE0F0DA991D69CCC9C0698FEC /* AriaTests.swift */; }; - BF_5B84B1D04E7CC3C24B53DD5C762880F0 /* XCTestManifests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_8FDAFC3EFD6ADA13B065A1038F263092 /* XCTestManifests.swift */; }; - BF_5F7A4CD92874E80A448E398686AB4A49 /* EventsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_E4041CB4F38F966E11BD91C0AA6A5BFA /* EventsTests.swift */; }; - BF_634B77774D529FB79D974CD92D1581B5 /* XCTestManifests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_8FDAFC3EFD6ADA13B065A1038F263092 /* XCTestManifests.swift */; }; - BF_6CD69795E5D3A3750C93421E7F6915F9 /* Attributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_04767826074DE160D5E92AA3059120FB /* Attributes.swift */; }; - BF_70599033A05FAF611A84247D38429E6D /* Elements.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_94BD343165A56E15063E765F7DE8235A /* Elements.swift */; }; - BF_7116AE49A0A02004E32A97BA5AFB3824 /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_677B99ED8217F43EF3C12EA7E42E5E41 /* AttributesTests.swift */; }; - BF_74EC162C08F3762ADF06A08E7C3CB9B2 /* Attributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_04767826074DE160D5E92AA3059120FB /* Attributes.swift */; }; - BF_84432FFA4A40665EBA7DDFB81E5ADE2C /* Attributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_04767826074DE160D5E92AA3059120FB /* Attributes.swift */; }; - BF_893F413F46D0747E482A79DA148794D7 /* MediaType.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_32E32CDF1C963D188F95E36B4147E862 /* MediaType.swift */; }; - BF_8A813C2952374131A8EEB17D06FDD92B /* Attributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_04767826074DE160D5E92AA3059120FB /* Attributes.swift */; }; - BF_8D6E09E24FD033CB991409C20A2A0A3D /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_677B99ED8217F43EF3C12EA7E42E5E41 /* AttributesTests.swift */; }; - BF_93F5343A37D75E1A9AA2CCEA5E3905A7 /* AriaTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_F75FACFFE0F0DA991D69CCC9C0698FEC /* AriaTests.swift */; }; - BF_95159EA4B8E6989B91CF17A26C0EB8B7 /* EventsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_E4041CB4F38F966E11BD91C0AA6A5BFA /* EventsTests.swift */; }; - BF_97122DAC844EA2EC93648CD1FC1A0CAF /* MediaTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_C83B72C4B65C28F6BE37D5682CA77D3A /* MediaTypeTests.swift */; }; - BF_A2248300D20A792C8162EB4A143A68F6 /* XCTestManifests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_8FDAFC3EFD6ADA13B065A1038F263092 /* XCTestManifests.swift */; }; - BF_B4F5881ED90EA5CC4E6F23E3FDF42201 /* MediaType.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_32E32CDF1C963D188F95E36B4147E862 /* MediaType.swift */; }; - BF_B8F89094381C8A87096C59966738FBAA /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_677B99ED8217F43EF3C12EA7E42E5E41 /* AttributesTests.swift */; }; - BF_BAACD22AEB9FF1A78C0160FE8DBD432E /* Node.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_11FBC77AD82B31BCEF6FB0320AC5E0DC /* Node.swift */; }; - BF_BCEF406B84E49562BD0EE2071117FAF0 /* Html4.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_24FF729FC7DFE8D83700385CA1131573 /* Html4.swift */; }; - BF_C499570608EC754D1AC1F2A985C06979 /* Aria.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_1957C0F2CF49A306AA5402A17F204E13 /* Aria.swift */; }; - BF_C6326FF838D957FC362C701E625C1626 /* MediaType.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_32E32CDF1C963D188F95E36B4147E862 /* MediaType.swift */; }; - BF_CCD68BA3C71C9376EADB5C38B14A61F8 /* MediaType.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_32E32CDF1C963D188F95E36B4147E862 /* MediaType.swift */; }; - BF_CEAC22143A4C4BB9DE9D3BEDB06114F0 /* Aria.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_1957C0F2CF49A306AA5402A17F204E13 /* Aria.swift */; }; - BF_D51C76EF5DA0B30926B139786B9C0A00 /* XCTestManifests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_8FDAFC3EFD6ADA13B065A1038F263092 /* XCTestManifests.swift */; }; - BF_D5D86DE26B8C00C74538D8E4EBEA2CE1 /* Render.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_9193E6DDB0F9A5361B5E2B130EC79A0C /* Render.swift */; }; - BF_D7A3BAC594C6D8CA1E7C3B0031AA35D0 /* MediaTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_C83B72C4B65C28F6BE37D5682CA77D3A /* MediaTypeTests.swift */; }; - BF_E0DCDF16D493E56E12C5C818E595A9CD /* Render.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_9193E6DDB0F9A5361B5E2B130EC79A0C /* Render.swift */; }; - BF_E379B7325A4DB4D5B585FAE652CE48CC /* AriaTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_F75FACFFE0F0DA991D69CCC9C0698FEC /* AriaTests.swift */; }; - BF_E436DE08AFD3EFAC52502786C8E1A54A /* Elements.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_94BD343165A56E15063E765F7DE8235A /* Elements.swift */; }; - BF_E488C0FA800554500F1424D7928FBACB /* Elements.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_94BD343165A56E15063E765F7DE8235A /* Elements.swift */; }; - BF_EDE4DEF484E3BBAD28E6227D79609B9B /* Events.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_BC6D52A984AA8579A5E685CDB96DF92B /* Events.swift */; }; - BF_EE3C0B8D361573F2F2AA821BB1305FC4 /* ElementsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_31451D3CFCD7B04EC4D63F72F9128FC1 /* ElementsTests.swift */; }; - BF_F3E4358B96921FAB04D9F31683B7AF5B /* Render.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_9193E6DDB0F9A5361B5E2B130EC79A0C /* Render.swift */; }; - BF_F4A181DB92218A56A31339DB77401B9B /* Node.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_11FBC77AD82B31BCEF6FB0320AC5E0DC /* Node.swift */; }; - BF_F635693DE5EE9E4EAF5CFED16527173F /* EventsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_E4041CB4F38F966E11BD91C0AA6A5BFA /* EventsTests.swift */; }; - BF_F642B02095C8E6A7AB2BACE484F2134F /* Node.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_11FBC77AD82B31BCEF6FB0320AC5E0DC /* Node.swift */; }; - BF_FB38D7424CD1495955B9C7FEE7873E34 /* Elements.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_94BD343165A56E15063E765F7DE8235A /* Elements.swift */; }; + BF_008A5702F99F07846B812AF73C8B45E1 /* Html4.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_84247EDD4C722F051D26423EAF9556B4 /* Html4.swift */; }; + BF_04EAFBA677DF1516B69B3E94C510B122 /* HtmlSnapshotTesting.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_2C04ED2D80670BFA8174C411C3DCC50B /* HtmlSnapshotTesting.swift */; }; + BF_058AE1B1A3D7CFF10D12F6161A5BB5D5 /* ElementsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_AF1B21A15DC5D681508C766490919BD1 /* ElementsTests.swift */; }; + BF_0617CDDDB48DE38770265BDD7CEB0DEC /* Node.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_0F4D9E9DED7F8875C991F2C8D340AC0F /* Node.swift */; }; + BF_0966C6144C56C0C83BBB56B5FA204AF7 /* Html.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_454B7862EFAF417284E587FDE4F417F7 /* Html.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_0BB5E97EDFED595635016E3EE7B8864E /* HtmlSnapshotTesting.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_D0E4DB97B85C77E83808CFAA36086DFC /* HtmlSnapshotTesting.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_0C554AC6B59BC603FB2F07579BE2E434 /* SnapshotTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_5D868222BE76AE04E2B491E967A6F5F9 /* SnapshotTesting.framework */; }; + BF_1594ED178D46E0C388251F1E04CDE923 /* Aria.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_B83D9298FE6176D48170EF3E46F99CCA /* Aria.swift */; }; + BF_15A7BDEBF65A443739634DB5C582FC81 /* Html4.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_84247EDD4C722F051D26423EAF9556B4 /* Html4.swift */; }; + BF_167EC013FBB3444EB137981C73CB1087 /* Events.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_D02E69C3123E18DA31C95CCEF4F55FD0 /* Events.swift */; }; + BF_24441D3310AF85C4F376D600FF4C8958 /* Events.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_D02E69C3123E18DA31C95CCEF4F55FD0 /* Events.swift */; }; + BF_24991B811CB7C11D52836CDBB9738D91 /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_C37C9D4A3478D7A0906676B07410B4F5 /* AttributesTests.swift */; }; + BF_24ED05C03DAFDF39FE30EE14FFE8730E /* SnapshotTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_5D868222BE76AE04E2B491E967A6F5F9 /* SnapshotTesting.framework */; }; + BF_25F0CF956E6CE5A08CF04CC85E0A4295 /* Attributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_75E1F23756D2E133BA75C9CE7559FED4 /* Attributes.swift */; }; + BF_26D7F20A75ED76315AAC9B5C41D718BC /* ElementsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_AF1B21A15DC5D681508C766490919BD1 /* ElementsTests.swift */; }; + BF_278F2A9F9C6DB1BB09F1B128BEA90554 /* XCTestManifests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_DCB027799D18D0FB625BD4612E72FAC3 /* XCTestManifests.swift */; }; + BF_2B257D3CB2E9B81C247ADF381DBDB62B /* HtmlSnapshotTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_D0E4DB97B85C77E83808CFAA36086DFC /* HtmlSnapshotTesting.framework */; }; + BF_2BA1B815F9EC78F22E1CCECFAEE5E44F /* Events.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_D02E69C3123E18DA31C95CCEF4F55FD0 /* Events.swift */; }; + BF_2D4814A45B39B39B985F292CCEF86E0C /* Html.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_A851F66F18D71D07E129E4B1177B980C /* Html.framework */; }; + BF_2FACF8DC1A08D554CABA3211CB6CA8CD /* Aria.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_B83D9298FE6176D48170EF3E46F99CCA /* Aria.swift */; }; + BF_347CC9F121F611817634BCED6EED5DC3 /* MediaType.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_2773FDC63ECF9CA8CE40879B3B0EACC4 /* MediaType.swift */; }; + BF_3B1027C6F72CA257FC500052522A4675 /* Aria.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_B83D9298FE6176D48170EF3E46F99CCA /* Aria.swift */; }; + BF_3F8D84AFFBE16A644F50F2B06BCBAAB6 /* Html.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_454B7862EFAF417284E587FDE4F417F7 /* Html.framework */; }; + BF_46DD45E6A6D9ED65D8141EAD3EA343F8 /* Render.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_F23919B43A726458B14604B66DD07753 /* Render.swift */; }; + BF_4BCB4B91197C3E6D33D8AA1B01697597 /* HtmlSnapshotTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_EF7D192E158611AA8AF39FBCD361FF90 /* HtmlSnapshotTesting.framework */; }; + BF_4E262A2097369CAB0947E96FB0D20554 /* MediaTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_FD4A0701B482ECFD3AC801193749B828 /* MediaTypeTests.swift */; }; + BF_55946568BD6A7CDF27D4FA633035BD5B /* Attributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_75E1F23756D2E133BA75C9CE7559FED4 /* Attributes.swift */; }; + BF_563D57FE0B16C29A91247EBEEE9EC7B0 /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_C37C9D4A3478D7A0906676B07410B4F5 /* AttributesTests.swift */; }; + BF_565393F81601512D2C6E41DCE7572D1D /* HtmlSnapshotTesting.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_2C04ED2D80670BFA8174C411C3DCC50B /* HtmlSnapshotTesting.swift */; }; + BF_595D70987B019CFCD51444943CAE5C72 /* HtmlSnapshotTesting.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_2C04ED2D80670BFA8174C411C3DCC50B /* HtmlSnapshotTesting.swift */; }; + BF_5A573E2D0A8BAE09309A4785FDFF3D32 /* EventsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_5B2816E603A1B4A51D2410FE860B6A73 /* EventsTests.swift */; }; + BF_605F312BFAC83F9D1E3AA65CB1668889 /* Attributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_75E1F23756D2E133BA75C9CE7559FED4 /* Attributes.swift */; }; + BF_61AB416E385994B572133AB831DA2AB3 /* Attributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_75E1F23756D2E133BA75C9CE7559FED4 /* Attributes.swift */; }; + BF_637C82D9AF32BC63C5DC411FDD8F48AE /* HtmlSnapshotTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_0738B551A3F66674027ADC5E96FB6433 /* HtmlSnapshotTesting.framework */; }; + BF_64E82553D6FE85AB9A9A0EC08ADD01ED /* EventsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_5B2816E603A1B4A51D2410FE860B6A73 /* EventsTests.swift */; }; + BF_65F0E3E98B96408A9B918E11902CD2FD /* DebugRender.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_0850AEA78BCAAD1DA3F3C266E13B78CB /* DebugRender.swift */; }; + BF_6AD9DAAD0E7665C0FAE92BCADE8F9E5B /* AriaTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_EF813CC7FA4018FC2F9A50D2931DDA13 /* AriaTests.swift */; }; + BF_6C8BBC64ECEFD8A269AF77E4BEDB870E /* HtmlSnapshotTestingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_705A9DFC1E550226909432DCEE159048 /* HtmlSnapshotTestingTests.swift */; }; + BF_70B4D5132D2605928522D2B6D09331DB /* Html.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_137ABCB525F73E48E9E0329EC90064AF /* Html.framework */; }; + BF_7722BFE856EB9FE98F76D23A5344EDA1 /* Html.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_A851F66F18D71D07E129E4B1177B980C /* Html.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_798DF057BBF3AABE9CA527736486DA11 /* XCTestManifests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_DCB027799D18D0FB625BD4612E72FAC3 /* XCTestManifests.swift */; }; + BF_7B644F57B477753969E24089C336734C /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_C37C9D4A3478D7A0906676B07410B4F5 /* AttributesTests.swift */; }; + BF_7B73670CF0825E7E4B35B4754EA0177B /* DebugRender.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_0850AEA78BCAAD1DA3F3C266E13B78CB /* DebugRender.swift */; }; + BF_7B8DF357C9BBC41FAC46F705E504B8A3 /* MediaTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_FD4A0701B482ECFD3AC801193749B828 /* MediaTypeTests.swift */; }; + BF_7DA986F804ABF0442B1896498E84A7A8 /* MediaTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_FD4A0701B482ECFD3AC801193749B828 /* MediaTypeTests.swift */; }; + BF_8362C1DC46756F8CBDFB9BB1345D9A93 /* Render.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_F23919B43A726458B14604B66DD07753 /* Render.swift */; }; + BF_867E037B341316E7D2ECE2571EEAED23 /* Render.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_F23919B43A726458B14604B66DD07753 /* Render.swift */; }; + BF_8825CC811E0A3040695CBDACCAA3C14F /* DebugRender.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_0850AEA78BCAAD1DA3F3C266E13B78CB /* DebugRender.swift */; }; + BF_884C6D4C6BA035CF95DACEBE216B76E2 /* HtmlSnapshotTestingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_705A9DFC1E550226909432DCEE159048 /* HtmlSnapshotTestingTests.swift */; }; + BF_8A354EAAB66D8E3DE255C128785F5C81 /* AttributesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_C37C9D4A3478D7A0906676B07410B4F5 /* AttributesTests.swift */; }; + BF_8B22EC95C72808E7C4EB9655A38A0B5A /* Node.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_0F4D9E9DED7F8875C991F2C8D340AC0F /* Node.swift */; }; + BF_8B861E44FDF640569DE8FF05357D3A70 /* EventsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_5B2816E603A1B4A51D2410FE860B6A73 /* EventsTests.swift */; }; + BF_8EB2DECBE7B14C281F77000FC19AAD0B /* ElementsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_AF1B21A15DC5D681508C766490919BD1 /* ElementsTests.swift */; }; + BF_935D0BFAB6123CD0DAFE7EE9E69DC063 /* Html.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_137ABCB525F73E48E9E0329EC90064AF /* Html.framework */; }; + BF_93F2464E59B3ADA379D9AFD87EA5A3D2 /* SnapshotTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_5D868222BE76AE04E2B491E967A6F5F9 /* SnapshotTesting.framework */; }; + BF_9A0B1A189B6074024418369D6B665DE3 /* Aria.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_B83D9298FE6176D48170EF3E46F99CCA /* Aria.swift */; }; + BF_9B72E8029CBB396C619144083CDEE8F5 /* Html4.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_84247EDD4C722F051D26423EAF9556B4 /* Html4.swift */; }; + BF_9DE76F9CFD7CE49ECAB4FB4A5C8DE42D /* XCTestManifests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_DCB027799D18D0FB625BD4612E72FAC3 /* XCTestManifests.swift */; }; + BF_A348F9E63DAF9CCA333D16623D7E4796 /* HtmlSnapshotTesting.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_5C5B2F5B06548979136A244E4C89D95A /* HtmlSnapshotTesting.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_A88105ED0725F34B1052BCB720F9F41B /* EventsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_5B2816E603A1B4A51D2410FE860B6A73 /* EventsTests.swift */; }; + BF_AA00EED8F7444475555C9CC04A91796A /* Elements.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_3AEC4DC02DA3D43270FEA9438A693C40 /* Elements.swift */; }; + BF_AACFA19929DD2D9607FCE8A7ED5E1492 /* HtmlSnapshotTesting.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_0738B551A3F66674027ADC5E96FB6433 /* HtmlSnapshotTesting.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_AE4039F8D303A38511E101A94D136B23 /* MediaType.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_2773FDC63ECF9CA8CE40879B3B0EACC4 /* MediaType.swift */; }; + BF_B2F122C85B8CCF9825F3D203EE89A3C9 /* MediaType.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_2773FDC63ECF9CA8CE40879B3B0EACC4 /* MediaType.swift */; }; + BF_B310E9EAD20812D893E237231E3DA4D2 /* Html4.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_84247EDD4C722F051D26423EAF9556B4 /* Html4.swift */; }; + BF_B6432B24DA58EB3438142CB65615E1D0 /* Node.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_0F4D9E9DED7F8875C991F2C8D340AC0F /* Node.swift */; }; + BF_B6E12040B2F4655609A10C1FEC7F37C2 /* HtmlSnapshotTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_5C5B2F5B06548979136A244E4C89D95A /* HtmlSnapshotTesting.framework */; }; + BF_C1795F68D10F619DA2D7BCFB6F5F58BD /* Html.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_56BF69D04F58D631B62547910FBA29AB /* Html.framework */; }; + BF_C26E0033107220651F282052426503F6 /* Node.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_0F4D9E9DED7F8875C991F2C8D340AC0F /* Node.swift */; }; + BF_C53F17FDB01D62BD227E30FB03C68D3F /* Html.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_137ABCB525F73E48E9E0329EC90064AF /* Html.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_C71D5072A7281A91A9B475DCE86C2B21 /* Elements.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_3AEC4DC02DA3D43270FEA9438A693C40 /* Elements.swift */; }; + BF_CCD2256A9DBC486987F3F43551B223A9 /* AriaTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_EF813CC7FA4018FC2F9A50D2931DDA13 /* AriaTests.swift */; }; + BF_CE61822D94187BF3F992DE42B316C3BA /* Html.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_56BF69D04F58D631B62547910FBA29AB /* Html.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_CE9BD77978ABBB3945304ED5FFDE4D22 /* DebugRender.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_0850AEA78BCAAD1DA3F3C266E13B78CB /* DebugRender.swift */; }; + BF_CF0E86D3302994FF9A9C54677F4E5A66 /* SnapshotTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_5D868222BE76AE04E2B491E967A6F5F9 /* SnapshotTesting.framework */; }; + BF_D164F90CEF6B6A5A9B50B0E4C819B853 /* AriaTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_EF813CC7FA4018FC2F9A50D2931DDA13 /* AriaTests.swift */; }; + BF_D1E67FAB41094DD199979F735674B59C /* Html.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_454B7862EFAF417284E587FDE4F417F7 /* Html.framework */; }; + BF_D1EC6634E48CAA46F330C4A722EC0337 /* Html.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_56BF69D04F58D631B62547910FBA29AB /* Html.framework */; }; + BF_E2AAFD8781AFAF1B7C157B98F249B154 /* HtmlSnapshotTesting.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_2C04ED2D80670BFA8174C411C3DCC50B /* HtmlSnapshotTesting.swift */; }; + BF_E37CBCFB5EB106C9B0B47D83BD00501B /* Events.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_D02E69C3123E18DA31C95CCEF4F55FD0 /* Events.swift */; }; + BF_EA15C26493DFD83A59AB9BE8E0D7AA4A /* AriaTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_EF813CC7FA4018FC2F9A50D2931DDA13 /* AriaTests.swift */; }; + BF_EDF30C936D87DB063C818C532B5BAF18 /* Elements.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_3AEC4DC02DA3D43270FEA9438A693C40 /* Elements.swift */; }; + BF_EF48C76BDF60C8580D714F851E5D88B0 /* MediaType.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_2773FDC63ECF9CA8CE40879B3B0EACC4 /* MediaType.swift */; }; + BF_F0C75B20B63A27C1EC68B41EB07496EB /* ElementsTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_AF1B21A15DC5D681508C766490919BD1 /* ElementsTests.swift */; }; + BF_F3DFC44A453A05F52FC0E68020D84D5B /* Elements.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_3AEC4DC02DA3D43270FEA9438A693C40 /* Elements.swift */; }; + BF_F3FA3DF870D54FB9B46B80B6B90FA204 /* MediaTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_FD4A0701B482ECFD3AC801193749B828 /* MediaTypeTests.swift */; }; + BF_F418B64B4E716428B1A60543E3BF53F0 /* Html.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FR_A851F66F18D71D07E129E4B1177B980C /* Html.framework */; }; + BF_F990810FF37D0B351B5B147A29A983C4 /* HtmlSnapshotTestingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_705A9DFC1E550226909432DCEE159048 /* HtmlSnapshotTestingTests.swift */; }; + BF_FAB9A7101A576B81DA765694DDD1E7F0 /* HtmlSnapshotTesting.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FR_EF7D192E158611AA8AF39FBCD361FF90 /* HtmlSnapshotTesting.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + BF_FC2286DCB1EFFAF5878808FB40A6CDF0 /* XCTestManifests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_DCB027799D18D0FB625BD4612E72FAC3 /* XCTestManifests.swift */; }; + BF_FEE1BA53F95E6C76DB2259F41E6324DE /* HtmlSnapshotTestingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_705A9DFC1E550226909432DCEE159048 /* HtmlSnapshotTestingTests.swift */; }; + BF_FFADB3958F2E3230AE1E012A0E69DC6A /* Render.swift in Sources */ = {isa = PBXBuildFile; fileRef = FR_F23919B43A726458B14604B66DD07753 /* Render.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - CIP_3B295F347A73DFDFD3EC5ABD5E3D60FD /* PBXContainerItemProxy */ = { + CIP_2FFF7EBD6A96C8BF6A78B34E98991462 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_FA846A49F72C052E4C6D4EB6DDB7C485; - remoteInfo = HtmlTests_watchOS; + remoteGlobalIDString = NT_8EA36F62ECD00F9CE1ECDE410AEF3B47; + remoteInfo = HtmlSnapshotTesting_watchOS; }; - CIP_BD4DB6ADD3C4AC046F4DB737AB53A171 /* PBXContainerItemProxy */ = { + CIP_3F002AD65FB7CBF51126C49E45500E71 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_0EC5D5A0415352CD656BDFBBA012F05F; - remoteInfo = HtmlTests_macOS; + remoteGlobalIDString = NT_35F4D7F166DB6BD11B0FE52D126BA796; + remoteInfo = HtmlSnapshotTesting_macOS; }; - CIP_CDDC2A09401C8099003115B2B9F92F7C /* PBXContainerItemProxy */ = { + CIP_428162E099AAE498F66071D85657F7DD /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_C8AB64528B429FF8C5E983E839B1E0BE; - remoteInfo = HtmlTests_iOS; + remoteGlobalIDString = NT_3DAB1392843626D3536CA19914B502C8; + remoteInfo = Html_macOS; }; - CIP_F33D0C111B542229327595FB7EFA7550 /* PBXContainerItemProxy */ = { + CIP_5E11A82DA491889A8D1375324A3CFCA8 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; proxyType = 1; - remoteGlobalIDString = NT_E3FE8A7E649940DA2207FA60E84BE68D; - remoteInfo = HtmlTests_tvOS; + remoteGlobalIDString = NT_E3DC39F33A9CC5CE33CBED0C7A0716AB; + remoteInfo = Html_tvOS; + }; + CIP_825D966EF836E0E71CF6881A75269FA8 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_391C0E1A822D646F708827B001EB83D2; + remoteInfo = Html_iOS; + }; + CIP_89EDC2A7F6D7562F8EF940B46BAA6DBA /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_5881CD49A13FAFE4B62A050F5942B296; + remoteInfo = HtmlSnapshotTesting_iOS; + }; + CIP_8DF159F48FA6256DEFC4C32AEBD165C6 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_3DAB1392843626D3536CA19914B502C8; + remoteInfo = Html_macOS; + }; + CIP_C70A0E858EED17308C8D0B7B41C55FA0 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_A56629B8583F524D8DABDEB1B3B5FCB8; + remoteInfo = Html_watchOS; + }; + CIP_DA359FC6B1376BF6D720448BF666D52C /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_E3DC39F33A9CC5CE33CBED0C7A0716AB; + remoteInfo = Html_tvOS; + }; + CIP_ED65AA7D2A04B134645AC114BE634B38 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_A56629B8583F524D8DABDEB1B3B5FCB8; + remoteInfo = Html_watchOS; + }; + CIP_FD6FA1F02F1A1056267C6CC6ABD3BC79 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_391C0E1A822D646F708827B001EB83D2; + remoteInfo = Html_iOS; + }; + CIP_FEC3F08F65BDD69FD4ED10630D2DA027 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; + proxyType = 1; + remoteGlobalIDString = NT_8DA0D6B0D3FB381C06CED88C8D8EB1F3; + remoteInfo = HtmlSnapshotTesting_tvOS; }; /* End PBXContainerItemProxy section */ +/* Begin PBXCopyFilesBuildPhase section */ + CFBP_0EF97FE9237F775F6378EF6C8ADDF746 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + BF_0966C6144C56C0C83BBB56B5FA204AF7 /* Html.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_104F460684C31F51F582A752718D1F52 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + BF_A348F9E63DAF9CCA333D16623D7E4796 /* HtmlSnapshotTesting.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_3518DAB421FD09511C350B2070048EC1 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + BF_C53F17FDB01D62BD227E30FB03C68D3F /* Html.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_454D57A9593439E7D0AA015E804AF1A5 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + BF_CE61822D94187BF3F992DE42B316C3BA /* Html.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_6BAA655AFDC030DC4A415B276A855D49 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + BF_AACFA19929DD2D9607FCE8A7ED5E1492 /* HtmlSnapshotTesting.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_9D3D7737E859C27FB0906BFF00AB7FFC /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + BF_FAB9A7101A576B81DA765694DDD1E7F0 /* HtmlSnapshotTesting.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_ED3D783EB6C94698CCB70104EB35CB95 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + BF_0BB5E97EDFED595635016E3EE7B8864E /* HtmlSnapshotTesting.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; + CFBP_F4A017195DD6933F2FEC397593218ECD /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + BF_7722BFE856EB9FE98F76D23A5344EDA1 /* Html.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + /* Begin PBXFileReference section */ - FR_04767826074DE160D5E92AA3059120FB /* Attributes.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Attributes.swift; sourceTree = ""; }; - FR_11FBC77AD82B31BCEF6FB0320AC5E0DC /* Node.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Node.swift; sourceTree = ""; }; + FR_0738B551A3F66674027ADC5E96FB6433 /* HtmlSnapshotTesting.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = HtmlSnapshotTesting.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_0850AEA78BCAAD1DA3F3C266E13B78CB /* DebugRender.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DebugRender.swift; sourceTree = ""; }; + FR_0F4D9E9DED7F8875C991F2C8D340AC0F /* Node.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Node.swift; sourceTree = ""; }; FR_137ABCB525F73E48E9E0329EC90064AF /* Html.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Html.framework; sourceTree = BUILT_PRODUCTS_DIR; }; FR_186C495A13918FA9B6DC64977C0BEF84 /* HtmlTests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = HtmlTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_1957C0F2CF49A306AA5402A17F204E13 /* Aria.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Aria.swift; sourceTree = ""; }; FR_207D0187D4F8218348DEFA383C2B838C /* HtmlTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = HtmlTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_24FF729FC7DFE8D83700385CA1131573 /* Html4.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Html4.swift; sourceTree = ""; }; - FR_31451D3CFCD7B04EC4D63F72F9128FC1 /* ElementsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ElementsTests.swift; sourceTree = ""; }; - FR_32E32CDF1C963D188F95E36B4147E862 /* MediaType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MediaType.swift; sourceTree = ""; }; + FR_2773FDC63ECF9CA8CE40879B3B0EACC4 /* MediaType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MediaType.swift; sourceTree = ""; }; + FR_2C04ED2D80670BFA8174C411C3DCC50B /* HtmlSnapshotTesting.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HtmlSnapshotTesting.swift; sourceTree = ""; }; + FR_3AEC4DC02DA3D43270FEA9438A693C40 /* Elements.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Elements.swift; sourceTree = ""; }; + FR_4024F32C566BA88E351F72CADE1F9287 /* HtmlSnapshotTestingTests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = HtmlSnapshotTestingTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_426253E0818C46FC1DB97614AD713830 /* HtmlSnapshotTestingTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = HtmlSnapshotTestingTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; FR_44D3298F923225BC3162818D9F543BBC /* HtmlTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = HtmlTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; FR_454B7862EFAF417284E587FDE4F417F7 /* Html.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Html.framework; sourceTree = BUILT_PRODUCTS_DIR; }; FR_56BF69D04F58D631B62547910FBA29AB /* Html.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Html.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_677B99ED8217F43EF3C12EA7E42E5E41 /* AttributesTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AttributesTests.swift; sourceTree = ""; }; - FR_87CF9BDB3A0AFF284200049D36D771E6 /* Html.playground */ = {isa = PBXFileReference; path = Html.playground; sourceTree = ""; }; + FR_5B2816E603A1B4A51D2410FE860B6A73 /* EventsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EventsTests.swift; sourceTree = ""; }; + FR_5C5B2F5B06548979136A244E4C89D95A /* HtmlSnapshotTesting.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = HtmlSnapshotTesting.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_5D868222BE76AE04E2B491E967A6F5F9 /* SnapshotTesting.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = SnapshotTesting.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_60FE2FD7DED430CDB41B57A0CAECD79A /* HtmlSnapshotTestingTests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = HtmlSnapshotTestingTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_705A9DFC1E550226909432DCEE159048 /* HtmlSnapshotTestingTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HtmlSnapshotTestingTests.swift; sourceTree = ""; }; + FR_75E1F23756D2E133BA75C9CE7559FED4 /* Attributes.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Attributes.swift; sourceTree = ""; }; + FR_84247EDD4C722F051D26423EAF9556B4 /* Html4.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Html4.swift; sourceTree = ""; }; FR_87FEDF3B848906588C41DBE9A6F6E75E /* HtmlTests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = HtmlTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_8FDAFC3EFD6ADA13B065A1038F263092 /* XCTestManifests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XCTestManifests.swift; sourceTree = ""; }; - FR_9193E6DDB0F9A5361B5E2B130EC79A0C /* Render.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Render.swift; sourceTree = ""; }; - FR_94BD343165A56E15063E765F7DE8235A /* Elements.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Elements.swift; sourceTree = ""; }; + FR_A14BE52DDE555137E458741DECF9D4A7 /* HtmlSnapshotTestingTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = HtmlSnapshotTestingTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; FR_A851F66F18D71D07E129E4B1177B980C /* Html.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Html.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - FR_BC6D52A984AA8579A5E685CDB96DF92B /* Events.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Events.swift; sourceTree = ""; }; - FR_C83B72C4B65C28F6BE37D5682CA77D3A /* MediaTypeTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MediaTypeTests.swift; sourceTree = ""; }; - FR_E4041CB4F38F966E11BD91C0AA6A5BFA /* EventsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EventsTests.swift; sourceTree = ""; }; - FR_F75FACFFE0F0DA991D69CCC9C0698FEC /* AriaTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AriaTests.swift; sourceTree = ""; }; + FR_AF1B21A15DC5D681508C766490919BD1 /* ElementsTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ElementsTests.swift; sourceTree = ""; }; + FR_B83D9298FE6176D48170EF3E46F99CCA /* Aria.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Aria.swift; sourceTree = ""; }; + FR_C37C9D4A3478D7A0906676B07410B4F5 /* AttributesTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AttributesTests.swift; sourceTree = ""; }; + FR_D02E69C3123E18DA31C95CCEF4F55FD0 /* Events.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Events.swift; sourceTree = ""; }; + FR_D0E4DB97B85C77E83808CFAA36086DFC /* HtmlSnapshotTesting.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = HtmlSnapshotTesting.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_DCB027799D18D0FB625BD4612E72FAC3 /* XCTestManifests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XCTestManifests.swift; sourceTree = ""; }; + FR_EF7D192E158611AA8AF39FBCD361FF90 /* HtmlSnapshotTesting.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = HtmlSnapshotTesting.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + FR_EF813CC7FA4018FC2F9A50D2931DDA13 /* AriaTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AriaTests.swift; sourceTree = ""; }; + FR_F23919B43A726458B14604B66DD07753 /* Render.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Render.swift; sourceTree = ""; }; + FR_FD4A0701B482ECFD3AC801193749B828 /* MediaTypeTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MediaTypeTests.swift; sourceTree = ""; }; /* End PBXFileReference section */ +/* Begin PBXFrameworksBuildPhase section */ + FBP_29AA1172FF0196656995D067990E362F /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_F418B64B4E716428B1A60543E3BF53F0 /* Html.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FBP_2C81E5F0230FB12D799B2A24DA3E8879 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_637C82D9AF32BC63C5DC411FDD8F48AE /* HtmlSnapshotTesting.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FBP_3E0B8227123B1F3E772E515DEF4E5ED7 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_3F8D84AFFBE16A644F50F2B06BCBAAB6 /* Html.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FBP_A1466079479EC0AA7AB058D9EDB8F234 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_C1795F68D10F619DA2D7BCFB6F5F58BD /* Html.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FBP_C1BB7FAAEBAA92390B1033ED91D8A117 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_2D4814A45B39B39B985F292CCEF86E0C /* Html.framework in Frameworks */, + BF_93F2464E59B3ADA379D9AFD87EA5A3D2 /* SnapshotTesting.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FBP_D54298D141A5DD6FF50B021AA616C1B2 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_4BCB4B91197C3E6D33D8AA1B01697597 /* HtmlSnapshotTesting.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FBP_DC02A60B50A5C4A75A5DF850DFAABFBB /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_D1E67FAB41094DD199979F735674B59C /* Html.framework in Frameworks */, + BF_CF0E86D3302994FF9A9C54677F4E5A66 /* SnapshotTesting.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FBP_E22C0A1C815DBF1E5E42519734360A4D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_935D0BFAB6123CD0DAFE7EE9E69DC063 /* Html.framework in Frameworks */, + BF_0C554AC6B59BC603FB2F07579BE2E434 /* SnapshotTesting.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FBP_EF54AFAC47518D12545D96B0009E1B06 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_D1EC6634E48CAA46F330C4A722EC0337 /* Html.framework in Frameworks */, + BF_24ED05C03DAFDF39FE30EE14FFE8730E /* SnapshotTesting.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FBP_F410FBAE321CF304B1EA2ED065EB598F /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_B6E12040B2F4655609A10C1FEC7F37C2 /* HtmlSnapshotTesting.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FBP_FA223CB757A14CF5B4B47E9BE5576A3E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_70B4D5132D2605928522D2B6D09331DB /* Html.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FBP_FD3661420DA129DE351BA7539944A4BD /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_2B257D3CB2E9B81C247ADF381DBDB62B /* HtmlSnapshotTesting.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + /* Begin PBXGroup section */ - G_0A21E25D6C83DF5311BDA1DD77A00B69 /* HtmlTests */ = { + G_055F07B9BA227AC03E30801B449E86C8 /* HtmlSnapshotTesting */ = { isa = PBXGroup; children = ( - FR_F75FACFFE0F0DA991D69CCC9C0698FEC /* AriaTests.swift */, - FR_677B99ED8217F43EF3C12EA7E42E5E41 /* AttributesTests.swift */, - FR_31451D3CFCD7B04EC4D63F72F9128FC1 /* ElementsTests.swift */, - FR_E4041CB4F38F966E11BD91C0AA6A5BFA /* EventsTests.swift */, - FR_C83B72C4B65C28F6BE37D5682CA77D3A /* MediaTypeTests.swift */, - FR_8FDAFC3EFD6ADA13B065A1038F263092 /* XCTestManifests.swift */, - ); - path = HtmlTests; + FR_2C04ED2D80670BFA8174C411C3DCC50B /* HtmlSnapshotTesting.swift */, + ); + name = HtmlSnapshotTesting; + path = Sources/HtmlSnapshotTesting; + sourceTree = ""; + }; + G_14F4C555950B9F930064EDCCC39A6660 /* HtmlTests */ = { + isa = PBXGroup; + children = ( + FR_EF813CC7FA4018FC2F9A50D2931DDA13 /* AriaTests.swift */, + FR_C37C9D4A3478D7A0906676B07410B4F5 /* AttributesTests.swift */, + FR_AF1B21A15DC5D681508C766490919BD1 /* ElementsTests.swift */, + FR_5B2816E603A1B4A51D2410FE860B6A73 /* EventsTests.swift */, + FR_FD4A0701B482ECFD3AC801193749B828 /* MediaTypeTests.swift */, + FR_DCB027799D18D0FB625BD4612E72FAC3 /* XCTestManifests.swift */, + ); + name = HtmlTests; + path = Tests/HtmlTests; + sourceTree = ""; + }; + G_7C7209BCC2391F524DE3FE11C5DD57A4 /* Html */ = { + isa = PBXGroup; + children = ( + FR_B83D9298FE6176D48170EF3E46F99CCA /* Aria.swift */, + FR_75E1F23756D2E133BA75C9CE7559FED4 /* Attributes.swift */, + FR_0850AEA78BCAAD1DA3F3C266E13B78CB /* DebugRender.swift */, + FR_3AEC4DC02DA3D43270FEA9438A693C40 /* Elements.swift */, + FR_D02E69C3123E18DA31C95CCEF4F55FD0 /* Events.swift */, + FR_84247EDD4C722F051D26423EAF9556B4 /* Html4.swift */, + FR_2773FDC63ECF9CA8CE40879B3B0EACC4 /* MediaType.swift */, + FR_0F4D9E9DED7F8875C991F2C8D340AC0F /* Node.swift */, + FR_F23919B43A726458B14604B66DD07753 /* Render.swift */, + ); + name = Html; + path = Sources/Html; sourceTree = ""; }; G_8F3F972CC52F24124E9996A4ABCD0256 /* Products */ = { @@ -143,6 +467,14 @@ FR_56BF69D04F58D631B62547910FBA29AB /* Html.framework */, FR_137ABCB525F73E48E9E0329EC90064AF /* Html.framework */, FR_A851F66F18D71D07E129E4B1177B980C /* Html.framework */, + FR_5C5B2F5B06548979136A244E4C89D95A /* HtmlSnapshotTesting.framework */, + FR_0738B551A3F66674027ADC5E96FB6433 /* HtmlSnapshotTesting.framework */, + FR_D0E4DB97B85C77E83808CFAA36086DFC /* HtmlSnapshotTesting.framework */, + FR_EF7D192E158611AA8AF39FBCD361FF90 /* HtmlSnapshotTesting.framework */, + FR_4024F32C566BA88E351F72CADE1F9287 /* HtmlSnapshotTestingTests.xctest */, + FR_426253E0818C46FC1DB97614AD713830 /* HtmlSnapshotTestingTests.xctest */, + FR_60FE2FD7DED430CDB41B57A0CAECD79A /* HtmlSnapshotTestingTests.xctest */, + FR_A14BE52DDE555137E458741DECF9D4A7 /* HtmlSnapshotTestingTests.xctest */, FR_186C495A13918FA9B6DC64977C0BEF84 /* HtmlTests.xctest */, FR_44D3298F923225BC3162818D9F543BBC /* HtmlTests.xctest */, FR_87FEDF3B848906588C41DBE9A6F6E75E /* HtmlTests.xctest */, @@ -151,20 +483,22 @@ name = Products; sourceTree = ""; }; - G_924F9EB02AD49D46C83BF2186833A14C /* Sources */ = { + G_B5AF402179CC9352B7B9EC1CD290D43A /* Frameworks */ = { isa = PBXGroup; children = ( - G_C3A94F08DFA6D454FF6B4D569840BC9B /* Html */, + FR_5D868222BE76AE04E2B491E967A6F5F9 /* SnapshotTesting.framework */, ); - path = Sources; + name = Frameworks; sourceTree = ""; }; G_B6EC796527F6FA1903AF2C18A2BFDA2D = { isa = PBXGroup; children = ( - FR_87CF9BDB3A0AFF284200049D36D771E6 /* Html.playground */, - G_924F9EB02AD49D46C83BF2186833A14C /* Sources */, - G_D0C33AE703302B28824496412FDF9A0D /* Tests */, + G_7C7209BCC2391F524DE3FE11C5DD57A4 /* Html */, + G_055F07B9BA227AC03E30801B449E86C8 /* HtmlSnapshotTesting */, + G_D105CECB23944DD92E02879650FA8915 /* HtmlSnapshotTestingTests */, + G_14F4C555950B9F930064EDCCC39A6660 /* HtmlTests */, + G_B5AF402179CC9352B7B9EC1CD290D43A /* Frameworks */, G_8F3F972CC52F24124E9996A4ABCD0256 /* Products */, ); indentWidth = 2; @@ -172,27 +506,13 @@ tabWidth = 2; usesTabs = 0; }; - G_C3A94F08DFA6D454FF6B4D569840BC9B /* Html */ = { - isa = PBXGroup; - children = ( - FR_1957C0F2CF49A306AA5402A17F204E13 /* Aria.swift */, - FR_04767826074DE160D5E92AA3059120FB /* Attributes.swift */, - FR_94BD343165A56E15063E765F7DE8235A /* Elements.swift */, - FR_BC6D52A984AA8579A5E685CDB96DF92B /* Events.swift */, - FR_24FF729FC7DFE8D83700385CA1131573 /* Html4.swift */, - FR_32E32CDF1C963D188F95E36B4147E862 /* MediaType.swift */, - FR_11FBC77AD82B31BCEF6FB0320AC5E0DC /* Node.swift */, - FR_9193E6DDB0F9A5361B5E2B130EC79A0C /* Render.swift */, - ); - path = Html; - sourceTree = ""; - }; - G_D0C33AE703302B28824496412FDF9A0D /* Tests */ = { + G_D105CECB23944DD92E02879650FA8915 /* HtmlSnapshotTestingTests */ = { isa = PBXGroup; children = ( - G_0A21E25D6C83DF5311BDA1DD77A00B69 /* HtmlTests */, + FR_705A9DFC1E550226909432DCEE159048 /* HtmlSnapshotTestingTests.swift */, ); - path = Tests; + name = HtmlSnapshotTestingTests; + path = Tests/HtmlSnapshotTestingTests; sourceTree = ""; }; /* End PBXGroup section */ @@ -203,17 +523,72 @@ buildConfigurationList = CL_22C0E5C81ECB635472569EFFEA8319DA /* Build configuration list for PBXNativeTarget "HtmlTests_macOS" */; buildPhases = ( SBP_BDBEA8231C20424E064DFB597FF52461 /* Sources */, + FBP_A1466079479EC0AA7AB058D9EDB8F234 /* Frameworks */, + CFBP_454D57A9593439E7D0AA015E804AF1A5 /* Embed Frameworks */, ); buildRules = ( ); dependencies = ( - TD_30A3B330C6F053B8586D480DB12201CD /* PBXTargetDependency */, + TD_E602C0A4C47944650BECE537C914501F /* PBXTargetDependency */, ); name = HtmlTests_macOS; productName = HtmlTests_macOS; productReference = FR_44D3298F923225BC3162818D9F543BBC /* HtmlTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; + NT_2AB5827BD5D16BFB6725C893076C6FDF /* HtmlSnapshotTestingTests_macOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_905577B2B1F7F177BEA37911480E6682 /* Build configuration list for PBXNativeTarget "HtmlSnapshotTestingTests_macOS" */; + buildPhases = ( + SBP_486634345880070F81FF70A14535A014 /* Sources */, + FBP_2C81E5F0230FB12D799B2A24DA3E8879 /* Frameworks */, + CFBP_6BAA655AFDC030DC4A415B276A855D49 /* Embed Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + TD_F7539E2170D052FD165B3CC230B5158A /* PBXTargetDependency */, + ); + name = HtmlSnapshotTestingTests_macOS; + productName = HtmlSnapshotTestingTests_macOS; + productReference = FR_426253E0818C46FC1DB97614AD713830 /* HtmlSnapshotTestingTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + NT_2DC28C2207FB2259D050202830AD64D1 /* HtmlSnapshotTestingTests_iOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_E03EA63DE9CCFC9DEB988DC5AFBAFE8B /* Build configuration list for PBXNativeTarget "HtmlSnapshotTestingTests_iOS" */; + buildPhases = ( + SBP_A9AE976A15137D14C488BEC51ECDBF90 /* Sources */, + FBP_F410FBAE321CF304B1EA2ED065EB598F /* Frameworks */, + CFBP_104F460684C31F51F582A752718D1F52 /* Embed Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + TD_C0C3B9066E9270D13A89F7D4C20CB09E /* PBXTargetDependency */, + ); + name = HtmlSnapshotTestingTests_iOS; + productName = HtmlSnapshotTestingTests_iOS; + productReference = FR_4024F32C566BA88E351F72CADE1F9287 /* HtmlSnapshotTestingTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + NT_35F4D7F166DB6BD11B0FE52D126BA796 /* HtmlSnapshotTesting_macOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_D6C7C63AF6E329A40C69B9B62FBBCB36 /* Build configuration list for PBXNativeTarget "HtmlSnapshotTesting_macOS" */; + buildPhases = ( + SBP_C66B6CCD8E3EA8559C1A36AE952A277E /* Sources */, + FBP_EF54AFAC47518D12545D96B0009E1B06 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + TD_3D83B190D0212792CDFDDA92671C94AF /* PBXTargetDependency */, + ); + name = HtmlSnapshotTesting_macOS; + productName = HtmlSnapshotTesting_macOS; + productReference = FR_0738B551A3F66674027ADC5E96FB6433 /* HtmlSnapshotTesting.framework */; + productType = "com.apple.product-type.framework"; + }; NT_391C0E1A822D646F708827B001EB83D2 /* Html_iOS */ = { isa = PBXNativeTarget; buildConfigurationList = CL_A4FAD437AF76FDBA9E3C49D474751D14 /* Build configuration list for PBXNativeTarget "Html_iOS" */; @@ -244,6 +619,75 @@ productReference = FR_56BF69D04F58D631B62547910FBA29AB /* Html.framework */; productType = "com.apple.product-type.framework"; }; + NT_43C00AA903204A253D3B52C2D7DF3B32 /* HtmlSnapshotTestingTests_watchOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_1052C43454F3EB202316E05CE116714E /* Build configuration list for PBXNativeTarget "HtmlSnapshotTestingTests_watchOS" */; + buildPhases = ( + SBP_1A5AE2B6AFE2DCC3875D5C8B6B584130 /* Sources */, + FBP_D54298D141A5DD6FF50B021AA616C1B2 /* Frameworks */, + CFBP_9D3D7737E859C27FB0906BFF00AB7FFC /* Embed Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + TD_38DB46375AC17170E23DEE004B1A5AEE /* PBXTargetDependency */, + ); + name = HtmlSnapshotTestingTests_watchOS; + productName = HtmlSnapshotTestingTests_watchOS; + productReference = FR_A14BE52DDE555137E458741DECF9D4A7 /* HtmlSnapshotTestingTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + NT_5881CD49A13FAFE4B62A050F5942B296 /* HtmlSnapshotTesting_iOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_945B5094C88A155540D2897E5A7EA6EC /* Build configuration list for PBXNativeTarget "HtmlSnapshotTesting_iOS" */; + buildPhases = ( + SBP_A3115C515AF6943CB3FB42249EF1B84D /* Sources */, + FBP_DC02A60B50A5C4A75A5DF850DFAABFBB /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + TD_A8D1AB9B9D218884B7DEA066200142E4 /* PBXTargetDependency */, + ); + name = HtmlSnapshotTesting_iOS; + productName = HtmlSnapshotTesting_iOS; + productReference = FR_5C5B2F5B06548979136A244E4C89D95A /* HtmlSnapshotTesting.framework */; + productType = "com.apple.product-type.framework"; + }; + NT_8DA0D6B0D3FB381C06CED88C8D8EB1F3 /* HtmlSnapshotTesting_tvOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_FEE21409DFDDCFEB1780816ECBFD3E12 /* Build configuration list for PBXNativeTarget "HtmlSnapshotTesting_tvOS" */; + buildPhases = ( + SBP_1F3FBCFBA16642D7EE34F01C3D6457E9 /* Sources */, + FBP_E22C0A1C815DBF1E5E42519734360A4D /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + TD_5E1A3F9667CA86E021E68F13E2F22782 /* PBXTargetDependency */, + ); + name = HtmlSnapshotTesting_tvOS; + productName = HtmlSnapshotTesting_tvOS; + productReference = FR_D0E4DB97B85C77E83808CFAA36086DFC /* HtmlSnapshotTesting.framework */; + productType = "com.apple.product-type.framework"; + }; + NT_8EA36F62ECD00F9CE1ECDE410AEF3B47 /* HtmlSnapshotTesting_watchOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_DFFC1359CD093F890AC726048D2843BF /* Build configuration list for PBXNativeTarget "HtmlSnapshotTesting_watchOS" */; + buildPhases = ( + SBP_F880A2137A7C22DEC3414B24ACDA6A7E /* Sources */, + FBP_C1BB7FAAEBAA92390B1033ED91D8A117 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + TD_8388282568FED5DDF5EF20ADCF3B0F05 /* PBXTargetDependency */, + ); + name = HtmlSnapshotTesting_watchOS; + productName = HtmlSnapshotTesting_watchOS; + productReference = FR_EF7D192E158611AA8AF39FBCD361FF90 /* HtmlSnapshotTesting.framework */; + productType = "com.apple.product-type.framework"; + }; NT_A56629B8583F524D8DABDEB1B3B5FCB8 /* Html_watchOS */ = { isa = PBXNativeTarget; buildConfigurationList = CL_36D42AC3DE4FF6C0C91AA27CB7BED96F /* Build configuration list for PBXNativeTarget "Html_watchOS" */; @@ -264,17 +708,37 @@ buildConfigurationList = CL_2AAD18E374F68D92C2AF3F10876697CF /* Build configuration list for PBXNativeTarget "HtmlTests_iOS" */; buildPhases = ( SBP_8B65B522274C0FC6C8C3436FB0CDF9A4 /* Sources */, + FBP_3E0B8227123B1F3E772E515DEF4E5ED7 /* Frameworks */, + CFBP_0EF97FE9237F775F6378EF6C8ADDF746 /* Embed Frameworks */, ); buildRules = ( ); dependencies = ( - TD_CE87913632F6081A96430944DC96D750 /* PBXTargetDependency */, + TD_2D2E8D0C8BA27FBFC8FAC0E588D034AE /* PBXTargetDependency */, ); name = HtmlTests_iOS; productName = HtmlTests_iOS; productReference = FR_186C495A13918FA9B6DC64977C0BEF84 /* HtmlTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; + NT_DD09D77AEA211941B06E7B13605F9DF1 /* HtmlSnapshotTestingTests_tvOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = CL_D99A9344C8A0D2283BC48B784B8AB7F5 /* Build configuration list for PBXNativeTarget "HtmlSnapshotTestingTests_tvOS" */; + buildPhases = ( + SBP_B203030E5BF0C799FAEF12719C2CDCDE /* Sources */, + FBP_FD3661420DA129DE351BA7539944A4BD /* Frameworks */, + CFBP_ED3D783EB6C94698CCB70104EB35CB95 /* Embed Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + TD_CB8FE0FEB7D30203E7807BF9E99CBF37 /* PBXTargetDependency */, + ); + name = HtmlSnapshotTestingTests_tvOS; + productName = HtmlSnapshotTestingTests_tvOS; + productReference = FR_60FE2FD7DED430CDB41B57A0CAECD79A /* HtmlSnapshotTestingTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; NT_E3DC39F33A9CC5CE33CBED0C7A0716AB /* Html_tvOS */ = { isa = PBXNativeTarget; buildConfigurationList = CL_1CD299291AE0BFFA37367999CEB6F900 /* Build configuration list for PBXNativeTarget "Html_tvOS" */; @@ -295,11 +759,13 @@ buildConfigurationList = CL_035E70787F58B7A45E9C0CA167594798 /* Build configuration list for PBXNativeTarget "HtmlTests_tvOS" */; buildPhases = ( SBP_3B2888382ADFB09FB3468DEC2CB74839 /* Sources */, + FBP_FA223CB757A14CF5B4B47E9BE5576A3E /* Frameworks */, + CFBP_3518DAB421FD09511C350B2070048EC1 /* Embed Frameworks */, ); buildRules = ( ); dependencies = ( - TD_D9EDC92BB8D46CD2A5EE085DE157D229 /* PBXTargetDependency */, + TD_DCE99D0564E79A0C1CB788A94337CCD0 /* PBXTargetDependency */, ); name = HtmlTests_tvOS; productName = HtmlTests_tvOS; @@ -311,11 +777,13 @@ buildConfigurationList = CL_07248284D902B7D116DF9C8019E8BD7B /* Build configuration list for PBXNativeTarget "HtmlTests_watchOS" */; buildPhases = ( SBP_8028A7936CB50E1A22E94C3DC34A1FE7 /* Sources */, + FBP_29AA1172FF0196656995D067990E362F /* Frameworks */, + CFBP_F4A017195DD6933F2FEC397593218ECD /* Embed Frameworks */, ); buildRules = ( ); dependencies = ( - TD_02DEBE2955109D176933E3C40201AB2B /* PBXTargetDependency */, + TD_806B692C992C010CFFF126117B2E0E05 /* PBXTargetDependency */, ); name = HtmlTests_watchOS; productName = HtmlTests_watchOS; @@ -341,6 +809,14 @@ projectDirPath = ""; projectRoot = ""; targets = ( + NT_2DC28C2207FB2259D050202830AD64D1 /* HtmlSnapshotTestingTests_iOS */, + NT_2AB5827BD5D16BFB6725C893076C6FDF /* HtmlSnapshotTestingTests_macOS */, + NT_DD09D77AEA211941B06E7B13605F9DF1 /* HtmlSnapshotTestingTests_tvOS */, + NT_43C00AA903204A253D3B52C2D7DF3B32 /* HtmlSnapshotTestingTests_watchOS */, + NT_5881CD49A13FAFE4B62A050F5942B296 /* HtmlSnapshotTesting_iOS */, + NT_35F4D7F166DB6BD11B0FE52D126BA796 /* HtmlSnapshotTesting_macOS */, + NT_8DA0D6B0D3FB381C06CED88C8D8EB1F3 /* HtmlSnapshotTesting_tvOS */, + NT_8EA36F62ECD00F9CE1ECDE410AEF3B47 /* HtmlSnapshotTesting_watchOS */, NT_C8AB64528B429FF8C5E983E839B1E0BE /* HtmlTests_iOS */, NT_0EC5D5A0415352CD656BDFBBA012F05F /* HtmlTests_macOS */, NT_E3FE8A7E649940DA2207FA60E84BE68D /* HtmlTests_tvOS */, @@ -358,14 +834,31 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_47AE237A21EB80E5615A255CABAE548D /* Aria.swift in Sources */, - BF_8A813C2952374131A8EEB17D06FDD92B /* Attributes.swift in Sources */, - BF_E488C0FA800554500F1424D7928FBACB /* Elements.swift in Sources */, - BF_53549900846231225D3F60015E999C3C /* Events.swift in Sources */, - BF_3D30C002A4DB359E1190590A0E06CF26 /* Html4.swift in Sources */, - BF_893F413F46D0747E482A79DA148794D7 /* MediaType.swift in Sources */, - BF_56E1E895F20B959BF2F4B380009EB538 /* Node.swift in Sources */, - BF_D5D86DE26B8C00C74538D8E4EBEA2CE1 /* Render.swift in Sources */, + BF_2FACF8DC1A08D554CABA3211CB6CA8CD /* Aria.swift in Sources */, + BF_605F312BFAC83F9D1E3AA65CB1668889 /* Attributes.swift in Sources */, + BF_7B73670CF0825E7E4B35B4754EA0177B /* DebugRender.swift in Sources */, + BF_AA00EED8F7444475555C9CC04A91796A /* Elements.swift in Sources */, + BF_167EC013FBB3444EB137981C73CB1087 /* Events.swift in Sources */, + BF_15A7BDEBF65A443739634DB5C582FC81 /* Html4.swift in Sources */, + BF_EF48C76BDF60C8580D714F851E5D88B0 /* MediaType.swift in Sources */, + BF_C26E0033107220651F282052426503F6 /* Node.swift in Sources */, + BF_46DD45E6A6D9ED65D8141EAD3EA343F8 /* Render.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_1A5AE2B6AFE2DCC3875D5C8B6B584130 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_FEE1BA53F95E6C76DB2259F41E6324DE /* HtmlSnapshotTestingTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_1F3FBCFBA16642D7EE34F01C3D6457E9 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_565393F81601512D2C6E41DCE7572D1D /* HtmlSnapshotTesting.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -373,14 +866,15 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_281A2C56D0B5DEAF6FF479602768DA21 /* Aria.swift in Sources */, - BF_74EC162C08F3762ADF06A08E7C3CB9B2 /* Attributes.swift in Sources */, - BF_FB38D7424CD1495955B9C7FEE7873E34 /* Elements.swift in Sources */, - BF_1601D2201CCCC901FF48A5EE027F86D1 /* Events.swift in Sources */, - BF_57EC010E3B6C49C2849F73130B767F26 /* Html4.swift in Sources */, - BF_C6326FF838D957FC362C701E625C1626 /* MediaType.swift in Sources */, - BF_F642B02095C8E6A7AB2BACE484F2134F /* Node.swift in Sources */, - BF_E0DCDF16D493E56E12C5C818E595A9CD /* Render.swift in Sources */, + BF_1594ED178D46E0C388251F1E04CDE923 /* Aria.swift in Sources */, + BF_55946568BD6A7CDF27D4FA633035BD5B /* Attributes.swift in Sources */, + BF_8825CC811E0A3040695CBDACCAA3C14F /* DebugRender.swift in Sources */, + BF_F3DFC44A453A05F52FC0E68020D84D5B /* Elements.swift in Sources */, + BF_2BA1B815F9EC78F22E1CCECFAEE5E44F /* Events.swift in Sources */, + BF_B310E9EAD20812D893E237231E3DA4D2 /* Html4.swift in Sources */, + BF_B2F122C85B8CCF9825F3D203EE89A3C9 /* MediaType.swift in Sources */, + BF_B6432B24DA58EB3438142CB65615E1D0 /* Node.swift in Sources */, + BF_FFADB3958F2E3230AE1E012A0E69DC6A /* Render.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -388,12 +882,20 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_E379B7325A4DB4D5B585FAE652CE48CC /* AriaTests.swift in Sources */, - BF_03A2EED843F90FA8E41B58C48D394F88 /* AttributesTests.swift in Sources */, - BF_00916079FF66FC0D646680666A7CD0E9 /* ElementsTests.swift in Sources */, - BF_5F7A4CD92874E80A448E398686AB4A49 /* EventsTests.swift in Sources */, - BF_1C9B40A0FC0ABC5FB5AB7C0DEB9648BD /* MediaTypeTests.swift in Sources */, - BF_A2248300D20A792C8162EB4A143A68F6 /* XCTestManifests.swift in Sources */, + BF_D164F90CEF6B6A5A9B50B0E4C819B853 /* AriaTests.swift in Sources */, + BF_24991B811CB7C11D52836CDBB9738D91 /* AttributesTests.swift in Sources */, + BF_26D7F20A75ED76315AAC9B5C41D718BC /* ElementsTests.swift in Sources */, + BF_A88105ED0725F34B1052BCB720F9F41B /* EventsTests.swift in Sources */, + BF_7B8DF357C9BBC41FAC46F705E504B8A3 /* MediaTypeTests.swift in Sources */, + BF_798DF057BBF3AABE9CA527736486DA11 /* XCTestManifests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_486634345880070F81FF70A14535A014 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_884C6D4C6BA035CF95DACEBE216B76E2 /* HtmlSnapshotTestingTests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -401,14 +903,15 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_C499570608EC754D1AC1F2A985C06979 /* Aria.swift in Sources */, - BF_6CD69795E5D3A3750C93421E7F6915F9 /* Attributes.swift in Sources */, - BF_70599033A05FAF611A84247D38429E6D /* Elements.swift in Sources */, - BF_EDE4DEF484E3BBAD28E6227D79609B9B /* Events.swift in Sources */, - BF_58E594B36913E4269F408F3FB239DC23 /* Html4.swift in Sources */, - BF_B4F5881ED90EA5CC4E6F23E3FDF42201 /* MediaType.swift in Sources */, - BF_F4A181DB92218A56A31339DB77401B9B /* Node.swift in Sources */, - BF_49A551264360C1045B7CE1449A8A0F92 /* Render.swift in Sources */, + BF_9A0B1A189B6074024418369D6B665DE3 /* Aria.swift in Sources */, + BF_61AB416E385994B572133AB831DA2AB3 /* Attributes.swift in Sources */, + BF_CE9BD77978ABBB3945304ED5FFDE4D22 /* DebugRender.swift in Sources */, + BF_C71D5072A7281A91A9B475DCE86C2B21 /* Elements.swift in Sources */, + BF_24441D3310AF85C4F376D600FF4C8958 /* Events.swift in Sources */, + BF_008A5702F99F07846B812AF73C8B45E1 /* Html4.swift in Sources */, + BF_347CC9F121F611817634BCED6EED5DC3 /* MediaType.swift in Sources */, + BF_8B22EC95C72808E7C4EB9655A38A0B5A /* Node.swift in Sources */, + BF_8362C1DC46756F8CBDFB9BB1345D9A93 /* Render.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -416,12 +919,12 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_5A020B56A2DD08EA1773BA802C41ABEA /* AriaTests.swift in Sources */, - BF_B8F89094381C8A87096C59966738FBAA /* AttributesTests.swift in Sources */, - BF_01CDA31EAA4E348D07A56D90CE4C1914 /* ElementsTests.swift in Sources */, - BF_95159EA4B8E6989B91CF17A26C0EB8B7 /* EventsTests.swift in Sources */, - BF_97122DAC844EA2EC93648CD1FC1A0CAF /* MediaTypeTests.swift in Sources */, - BF_D51C76EF5DA0B30926B139786B9C0A00 /* XCTestManifests.swift in Sources */, + BF_CCD2256A9DBC486987F3F43551B223A9 /* AriaTests.swift in Sources */, + BF_563D57FE0B16C29A91247EBEEE9EC7B0 /* AttributesTests.swift in Sources */, + BF_058AE1B1A3D7CFF10D12F6161A5BB5D5 /* ElementsTests.swift in Sources */, + BF_8B861E44FDF640569DE8FF05357D3A70 /* EventsTests.swift in Sources */, + BF_7DA986F804ABF0442B1896498E84A7A8 /* MediaTypeTests.swift in Sources */, + BF_FC2286DCB1EFFAF5878808FB40A6CDF0 /* XCTestManifests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -429,12 +932,36 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_060C5A042E40BDCF757B2476C9391E9A /* AriaTests.swift in Sources */, - BF_8D6E09E24FD033CB991409C20A2A0A3D /* AttributesTests.swift in Sources */, - BF_55BF1F4394531240992F88B1AC5449FE /* ElementsTests.swift in Sources */, - BF_F635693DE5EE9E4EAF5CFED16527173F /* EventsTests.swift in Sources */, - BF_D7A3BAC594C6D8CA1E7C3B0031AA35D0 /* MediaTypeTests.swift in Sources */, - BF_5B84B1D04E7CC3C24B53DD5C762880F0 /* XCTestManifests.swift in Sources */, + BF_6AD9DAAD0E7665C0FAE92BCADE8F9E5B /* AriaTests.swift in Sources */, + BF_7B644F57B477753969E24089C336734C /* AttributesTests.swift in Sources */, + BF_8EB2DECBE7B14C281F77000FC19AAD0B /* ElementsTests.swift in Sources */, + BF_64E82553D6FE85AB9A9A0EC08ADD01ED /* EventsTests.swift in Sources */, + BF_4E262A2097369CAB0947E96FB0D20554 /* MediaTypeTests.swift in Sources */, + BF_9DE76F9CFD7CE49ECAB4FB4A5C8DE42D /* XCTestManifests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_A3115C515AF6943CB3FB42249EF1B84D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_04EAFBA677DF1516B69B3E94C510B122 /* HtmlSnapshotTesting.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_A9AE976A15137D14C488BEC51ECDBF90 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_F990810FF37D0B351B5B147A29A983C4 /* HtmlSnapshotTestingTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_B203030E5BF0C799FAEF12719C2CDCDE /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_6C8BBC64ECEFD8A269AF77E4BEDB870E /* HtmlSnapshotTestingTests.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -442,12 +969,20 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_93F5343A37D75E1A9AA2CCEA5E3905A7 /* AriaTests.swift in Sources */, - BF_7116AE49A0A02004E32A97BA5AFB3824 /* AttributesTests.swift in Sources */, - BF_EE3C0B8D361573F2F2AA821BB1305FC4 /* ElementsTests.swift in Sources */, - BF_04DC74D1E8547CA689F92509E6688688 /* EventsTests.swift in Sources */, - BF_52C766E312455A9F21C4FE31F22E1DBA /* MediaTypeTests.swift in Sources */, - BF_634B77774D529FB79D974CD92D1581B5 /* XCTestManifests.swift in Sources */, + BF_EA15C26493DFD83A59AB9BE8E0D7AA4A /* AriaTests.swift in Sources */, + BF_8A354EAAB66D8E3DE255C128785F5C81 /* AttributesTests.swift in Sources */, + BF_F0C75B20B63A27C1EC68B41EB07496EB /* ElementsTests.swift in Sources */, + BF_5A573E2D0A8BAE09309A4785FDFF3D32 /* EventsTests.swift in Sources */, + BF_F3FA3DF870D54FB9B46B80B6B90FA204 /* MediaTypeTests.swift in Sources */, + BF_278F2A9F9C6DB1BB09F1B128BEA90554 /* XCTestManifests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_C66B6CCD8E3EA8559C1A36AE952A277E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_595D70987B019CFCD51444943CAE5C72 /* HtmlSnapshotTesting.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -455,39 +990,88 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BF_CEAC22143A4C4BB9DE9D3BEDB06114F0 /* Aria.swift in Sources */, - BF_84432FFA4A40665EBA7DDFB81E5ADE2C /* Attributes.swift in Sources */, - BF_E436DE08AFD3EFAC52502786C8E1A54A /* Elements.swift in Sources */, - BF_4AB73F0371B126D2BC8A23346599915F /* Events.swift in Sources */, - BF_BCEF406B84E49562BD0EE2071117FAF0 /* Html4.swift in Sources */, - BF_CCD68BA3C71C9376EADB5C38B14A61F8 /* MediaType.swift in Sources */, - BF_BAACD22AEB9FF1A78C0160FE8DBD432E /* Node.swift in Sources */, - BF_F3E4358B96921FAB04D9F31683B7AF5B /* Render.swift in Sources */, + BF_3B1027C6F72CA257FC500052522A4675 /* Aria.swift in Sources */, + BF_25F0CF956E6CE5A08CF04CC85E0A4295 /* Attributes.swift in Sources */, + BF_65F0E3E98B96408A9B918E11902CD2FD /* DebugRender.swift in Sources */, + BF_EDF30C936D87DB063C818C532B5BAF18 /* Elements.swift in Sources */, + BF_E37CBCFB5EB106C9B0B47D83BD00501B /* Events.swift in Sources */, + BF_9B72E8029CBB396C619144083CDEE8F5 /* Html4.swift in Sources */, + BF_AE4039F8D303A38511E101A94D136B23 /* MediaType.swift in Sources */, + BF_0617CDDDB48DE38770265BDD7CEB0DEC /* Node.swift in Sources */, + BF_867E037B341316E7D2ECE2571EEAED23 /* Render.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + SBP_F880A2137A7C22DEC3414B24ACDA6A7E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BF_E2AAFD8781AFAF1B7C157B98F249B154 /* HtmlSnapshotTesting.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - TD_02DEBE2955109D176933E3C40201AB2B /* PBXTargetDependency */ = { + TD_2D2E8D0C8BA27FBFC8FAC0E588D034AE /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = NT_391C0E1A822D646F708827B001EB83D2 /* Html_iOS */; + targetProxy = CIP_FD6FA1F02F1A1056267C6CC6ABD3BC79 /* PBXContainerItemProxy */; + }; + TD_38DB46375AC17170E23DEE004B1A5AEE /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = NT_8EA36F62ECD00F9CE1ECDE410AEF3B47 /* HtmlSnapshotTesting_watchOS */; + targetProxy = CIP_2FFF7EBD6A96C8BF6A78B34E98991462 /* PBXContainerItemProxy */; + }; + TD_3D83B190D0212792CDFDDA92671C94AF /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_FA846A49F72C052E4C6D4EB6DDB7C485 /* HtmlTests_watchOS */; - targetProxy = CIP_3B295F347A73DFDFD3EC5ABD5E3D60FD /* PBXContainerItemProxy */; + target = NT_3DAB1392843626D3536CA19914B502C8 /* Html_macOS */; + targetProxy = CIP_8DF159F48FA6256DEFC4C32AEBD165C6 /* PBXContainerItemProxy */; }; - TD_30A3B330C6F053B8586D480DB12201CD /* PBXTargetDependency */ = { + TD_5E1A3F9667CA86E021E68F13E2F22782 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_0EC5D5A0415352CD656BDFBBA012F05F /* HtmlTests_macOS */; - targetProxy = CIP_BD4DB6ADD3C4AC046F4DB737AB53A171 /* PBXContainerItemProxy */; + target = NT_E3DC39F33A9CC5CE33CBED0C7A0716AB /* Html_tvOS */; + targetProxy = CIP_5E11A82DA491889A8D1375324A3CFCA8 /* PBXContainerItemProxy */; }; - TD_CE87913632F6081A96430944DC96D750 /* PBXTargetDependency */ = { + TD_806B692C992C010CFFF126117B2E0E05 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_C8AB64528B429FF8C5E983E839B1E0BE /* HtmlTests_iOS */; - targetProxy = CIP_CDDC2A09401C8099003115B2B9F92F7C /* PBXContainerItemProxy */; + target = NT_A56629B8583F524D8DABDEB1B3B5FCB8 /* Html_watchOS */; + targetProxy = CIP_ED65AA7D2A04B134645AC114BE634B38 /* PBXContainerItemProxy */; }; - TD_D9EDC92BB8D46CD2A5EE085DE157D229 /* PBXTargetDependency */ = { + TD_8388282568FED5DDF5EF20ADCF3B0F05 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - target = NT_E3FE8A7E649940DA2207FA60E84BE68D /* HtmlTests_tvOS */; - targetProxy = CIP_F33D0C111B542229327595FB7EFA7550 /* PBXContainerItemProxy */; + target = NT_A56629B8583F524D8DABDEB1B3B5FCB8 /* Html_watchOS */; + targetProxy = CIP_C70A0E858EED17308C8D0B7B41C55FA0 /* PBXContainerItemProxy */; + }; + TD_A8D1AB9B9D218884B7DEA066200142E4 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = NT_391C0E1A822D646F708827B001EB83D2 /* Html_iOS */; + targetProxy = CIP_825D966EF836E0E71CF6881A75269FA8 /* PBXContainerItemProxy */; + }; + TD_C0C3B9066E9270D13A89F7D4C20CB09E /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = NT_5881CD49A13FAFE4B62A050F5942B296 /* HtmlSnapshotTesting_iOS */; + targetProxy = CIP_89EDC2A7F6D7562F8EF940B46BAA6DBA /* PBXContainerItemProxy */; + }; + TD_CB8FE0FEB7D30203E7807BF9E99CBF37 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = NT_8DA0D6B0D3FB381C06CED88C8D8EB1F3 /* HtmlSnapshotTesting_tvOS */; + targetProxy = CIP_FEC3F08F65BDD69FD4ED10630D2DA027 /* PBXContainerItemProxy */; + }; + TD_DCE99D0564E79A0C1CB788A94337CCD0 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = NT_E3DC39F33A9CC5CE33CBED0C7A0716AB /* Html_tvOS */; + targetProxy = CIP_DA359FC6B1376BF6D720448BF666D52C /* PBXContainerItemProxy */; + }; + TD_E602C0A4C47944650BECE537C914501F /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = NT_3DAB1392843626D3536CA19914B502C8 /* Html_macOS */; + targetProxy = CIP_428162E099AAE498F66071D85657F7DD /* PBXContainerItemProxy */; + }; + TD_F7539E2170D052FD165B3CC230B5158A /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = NT_35F4D7F166DB6BD11B0FE52D126BA796 /* HtmlSnapshotTesting_macOS */; + targetProxy = CIP_3F002AD65FB7CBF51126C49E45500E71 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ @@ -532,23 +1116,72 @@ PRODUCT_NAME = Html; SDKROOT = appletvos; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = 3; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + BC_258D71B113BB889A6F0C320CD092467F /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTestingTests-tvOS"; + PRODUCT_NAME = HtmlSnapshotTestingTests; + SDKROOT = appletvos; + TARGETED_DEVICE_FAMILY = 3; + }; + name = Debug; + }; + BC_2817927ED502C84B38368D2EC6B5EF32 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlTests-tvOS"; + PRODUCT_NAME = HtmlTests; + SDKROOT = appletvos; + TARGETED_DEVICE_FAMILY = 3; + }; + name = Debug; + }; + BC_28DF056C13A829EC3AAD2032ADF68436 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTestingTests-tvOS"; + PRODUCT_NAME = HtmlSnapshotTestingTests; + SDKROOT = appletvos; + TARGETED_DEVICE_FAMILY = 3; + }; + name = Release; + }; + BC_31DD439987248714EB8BB8C206A27EA9 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\".\"", + ); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTesting-macOS"; + PRODUCT_NAME = HtmlSnapshotTesting; + SDKROOT = macosx; + SKIP_INSTALL = YES; VERSIONING_SYSTEM = "apple-generic"; }; name = Debug; }; - BC_2817927ED502C84B38368D2EC6B5EF32 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlTests-tvOS"; - PRODUCT_NAME = HtmlTests; - SDKROOT = appletvos; - TARGETED_DEVICE_FAMILY = 3; - }; - name = Debug; - }; BC_39241E7D98C62F1B3F9CA941C2CBCDCA /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -570,6 +1203,19 @@ }; name = Debug; }; + BC_3E65AE0F6FF2508F91E8A5CCAFAF01B3 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTestingTests-watchOS"; + PRODUCT_NAME = HtmlSnapshotTestingTests; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + }; + name = Release; + }; BC_4218F41AE9912BC20AC6C66FE88BEF80 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { @@ -666,14 +1312,35 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.9; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; SWIFT_VERSION = 4.2; - TVOS_DEPLOYMENT_TARGET = 9.0; VALIDATE_PRODUCT = YES; - WATCHOS_DEPLOYMENT_TARGET = 2.0; + }; + name = Release; + }; + BC_687D208815014A217D210337BD703586 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + COMBINE_HIDPI_IMAGES = YES; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\".\"", + ); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTesting-macOS"; + PRODUCT_NAME = HtmlSnapshotTesting; + SDKROOT = macosx; + SKIP_INSTALL = YES; + VERSIONING_SYSTEM = "apple-generic"; }; name = Release; }; @@ -689,6 +1356,42 @@ }; name = Release; }; + BC_7082599EC9F1924DAF3C2E6907240B87 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTestingTests-iOS"; + PRODUCT_NAME = HtmlSnapshotTestingTests; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + BC_747239EF45E48AB724EF423FA65B0C49 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\".\"", + ); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTesting-watchOS"; + PRODUCT_NAME = HtmlSnapshotTesting; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; BC_7E9F4DECB71DE8CC14B16B33F42E05EC /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -738,16 +1441,12 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.9; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 4.2; - TVOS_DEPLOYMENT_TARGET = 9.0; - WATCHOS_DEPLOYMENT_TARGET = 2.0; }; name = Debug; }; @@ -764,6 +1463,43 @@ }; name = Release; }; + BC_91D8FD23F33A7E3D1F032328B069AF91 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + COMBINE_HIDPI_IMAGES = YES; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTestingTests-macOS"; + PRODUCT_NAME = HtmlSnapshotTestingTests; + SDKROOT = macosx; + }; + name = Release; + }; + BC_9BCAC3DEFD5026C798EA1A60FFC169DE /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\".\"", + ); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTesting-iOS"; + PRODUCT_NAME = HtmlSnapshotTesting; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; BC_9C34A53DEFE1DF0A68D267627509181A /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -805,6 +1541,68 @@ }; name = Release; }; + BC_9F5FCACFE0B7B633426B8597A819280B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\".\"", + ); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTesting-tvOS"; + PRODUCT_NAME = HtmlSnapshotTesting; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + BC_A11F5C843E1C1360742BD6454A739552 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\".\"", + ); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTesting-watchOS"; + PRODUCT_NAME = HtmlSnapshotTesting; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; + BC_B1E189473E29F7DE730CCD1CACBA6D4F /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTestingTests-watchOS"; + PRODUCT_NAME = HtmlSnapshotTestingTests; + SDKROOT = watchos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 4; + }; + name = Debug; + }; BC_B4AF93FC0F3F4AD627A2BFA37DF45866 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { @@ -839,6 +1637,80 @@ }; name = Debug; }; + BC_C922D44FDBF98AC6A544965CE48737CA /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + COMBINE_HIDPI_IMAGES = YES; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTestingTests-macOS"; + PRODUCT_NAME = HtmlSnapshotTestingTests; + SDKROOT = macosx; + }; + name = Debug; + }; + BC_CD07538898FE4B9361E8B7E7A041C279 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\".\"", + ); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTesting-tvOS"; + PRODUCT_NAME = HtmlSnapshotTesting; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = 3; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; + BC_CD1AC9686145A4058C479D7EB25FAC39 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\".\"", + ); + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTesting-iOS"; + PRODUCT_NAME = HtmlSnapshotTesting; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + BC_CD91EA9C18FF7AAA09B0B76A427B05E6 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = "co.pointfree.HtmlSnapshotTestingTests-iOS"; + PRODUCT_NAME = HtmlSnapshotTestingTests; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; BC_D7C8C3DFC45ADCC00EDD6185D1AC3B2B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { @@ -893,6 +1765,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; + CL_1052C43454F3EB202316E05CE116714E /* Build configuration list for PBXNativeTarget "HtmlSnapshotTestingTests_watchOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_B1E189473E29F7DE730CCD1CACBA6D4F /* Debug */, + BC_3E65AE0F6FF2508F91E8A5CCAFAF01B3 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; CL_1CD299291AE0BFFA37367999CEB6F900 /* Build configuration list for PBXNativeTarget "Html_tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -938,6 +1819,24 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Debug; }; + CL_905577B2B1F7F177BEA37911480E6682 /* Build configuration list for PBXNativeTarget "HtmlSnapshotTestingTests_macOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_C922D44FDBF98AC6A544965CE48737CA /* Debug */, + BC_91D8FD23F33A7E3D1F032328B069AF91 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_945B5094C88A155540D2897E5A7EA6EC /* Build configuration list for PBXNativeTarget "HtmlSnapshotTesting_iOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_CD1AC9686145A4058C479D7EB25FAC39 /* Debug */, + BC_9BCAC3DEFD5026C798EA1A60FFC169DE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; CL_A4FAD437AF76FDBA9E3C49D474751D14 /* Build configuration list for PBXNativeTarget "Html_iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -956,6 +1855,51 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = ""; }; + CL_D6C7C63AF6E329A40C69B9B62FBBCB36 /* Build configuration list for PBXNativeTarget "HtmlSnapshotTesting_macOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_31DD439987248714EB8BB8C206A27EA9 /* Debug */, + BC_687D208815014A217D210337BD703586 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_D99A9344C8A0D2283BC48B784B8AB7F5 /* Build configuration list for PBXNativeTarget "HtmlSnapshotTestingTests_tvOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_258D71B113BB889A6F0C320CD092467F /* Debug */, + BC_28DF056C13A829EC3AAD2032ADF68436 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_DFFC1359CD093F890AC726048D2843BF /* Build configuration list for PBXNativeTarget "HtmlSnapshotTesting_watchOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_747239EF45E48AB724EF423FA65B0C49 /* Debug */, + BC_A11F5C843E1C1360742BD6454A739552 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_E03EA63DE9CCFC9DEB988DC5AFBAFE8B /* Build configuration list for PBXNativeTarget "HtmlSnapshotTestingTests_iOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_7082599EC9F1924DAF3C2E6907240B87 /* Debug */, + BC_CD91EA9C18FF7AAA09B0B76A427B05E6 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; + CL_FEE21409DFDDCFEB1780816ECBFD3E12 /* Build configuration list for PBXNativeTarget "HtmlSnapshotTesting_tvOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + BC_9F5FCACFE0B7B633426B8597A819280B /* Debug */, + BC_CD07538898FE4B9361E8B7E7A041C279 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = ""; + }; /* End XCConfigurationList section */ }; rootObject = P_71156FC3BAF7CC8140053AE66992A365 /* Project object */; diff --git a/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_iOS.xcscheme b/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_iOS.xcscheme new file mode 100644 index 0000000..6caf25c --- /dev/null +++ b/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_iOS.xcscheme @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_macOS.xcscheme b/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_macOS.xcscheme new file mode 100644 index 0000000..2df45cf --- /dev/null +++ b/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_macOS.xcscheme @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_tvOS.xcscheme b/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_tvOS.xcscheme new file mode 100644 index 0000000..b7147e0 --- /dev/null +++ b/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_tvOS.xcscheme @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_watchOS.xcscheme b/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_watchOS.xcscheme new file mode 100644 index 0000000..af9ecee --- /dev/null +++ b/Html.xcodeproj/xcshareddata/xcschemes/HtmlSnapshotTesting_watchOS.xcscheme @@ -0,0 +1,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Html.xcworkspace/contents.xcworkspacedata b/Html.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..3973195 --- /dev/null +++ b/Html.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,19 @@ + + + + + + + + + + + + + diff --git a/Html.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Html.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Html.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/HtmlSnapshotTesting.podspec b/HtmlSnapshotTesting.podspec new file mode 100644 index 0000000..01ac3a1 --- /dev/null +++ b/HtmlSnapshotTesting.podspec @@ -0,0 +1,35 @@ +Pod::Spec.new do |s| + s.name = "HtmlSnapshotTesting" + s.version = "0.1.3" + s.summary = "SnapshotTesting strategies for Html." + + s.description = <<-DESC + Snapshot test your HTML with ease with ready-to-use strategies. + DESC + + s.homepage = "https://github.com/pointfreeco/swift-html" + + s.license = "MIT" + + s.authors = { + "Stephen Celis" => "stephen@stephencelis.com", + "Brandon Williams" => "mbw234@gmail.com" + } + s.social_media_url = "https://twitter.com/pointfreeco" + + s.source = { + :git => "https://github.com/pointfreeco/swift-html.git", + :tag => s.version + } + + s.swift_version = "4.2.1" + + s.ios.deployment_target = "10.0" + s.osx.deployment_target = "10.10" + s.tvos.deployment_target = "10.0" + + s.dependency "Html", "~> 0.1" + s.dependency "SnapshotTesting", "~> 1.1" + + s.source_files = "Sources/HtmlSnapshotTesting/**/*.swift" +end diff --git a/Makefile b/Makefile index 7c4183e..a24c95d 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,8 @@ +bootstrap: carthage xcodeproj + +carthage: + carthage update --no-build --use-submodules + xcodeproj: @command -v xcodegen >/dev/null 2>&1 || { echo >&2 "Required tool missing: XcodeGen. Try 'brew install xcodegen' perhaps?"; exit 1; } xcodegen diff --git a/Package.swift b/Package.swift index a6fce30..15b079f 100644 --- a/Package.swift +++ b/Package.swift @@ -8,8 +8,14 @@ let package = Package( .library( name: "Html", targets: ["Html"]), + .library( + name: "HtmlSnapshotTesting", + targets: ["HtmlSnapshotTesting"]), ], dependencies: [ + .package( + url: "https://github.com/pointfreeco/swift-snapshot-testing.git", + from: "1.1.0"), ], targets: [ .target( @@ -18,5 +24,11 @@ let package = Package( .testTarget( name: "HtmlTests", dependencies: ["Html"]), + .target( + name: "HtmlSnapshotTesting", + dependencies: ["Html", "SnapshotTesting"]), + .testTarget( + name: "HtmlSnapshotTestingTests", + dependencies: ["HtmlSnapshotTesting"]), ] ) diff --git a/README.md b/README.md index 90c1a27..e3367f5 100644 --- a/README.md +++ b/README.md @@ -184,6 +184,22 @@ There are a few reasons you might want to still use a templating language: ## Installation +### Carthage + +If you use [Carthage](https://github.com/Carthage/Carthage), you can add the following dependency to your `Cartfile`: + +``` ruby +github "pointfreeco/swift-html" ~> 0.1.3 +``` + +### CocoaPods + +If your project uses [CocoaPods](https://cocoapods.org), just add the following to your `Podfile`: + +``` ruby +pod 'Html', '~> 0.1.3' +``` + ### SwiftPM If you want to use swift-html in a project that uses [SwiftPM](https://swift.org/package-manager/), it's as simple as adding a `dependencies` clause to your `Package.swift`: diff --git a/Sources/Html/DebugRender.swift b/Sources/Html/DebugRender.swift new file mode 100644 index 0000000..4bfb61b --- /dev/null +++ b/Sources/Html/DebugRender.swift @@ -0,0 +1,67 @@ +public struct Config { + public let indentation: String + public let newline: String + + public init(indentation: String, newline: String) { + self.indentation = indentation + self.newline = newline + } + + public static let pretty = Config(indentation: " ", newline: "\n") +} + +public func debugRender(_ nodes: [Node], config: Config = .pretty) -> String { + return nodes + .map { debugRender($0, config: config) } + .joined() +} + +public func debugRender(_ node: Node, config: Config = .pretty) -> String { + func debugRenderHelp(_ node: Node, config: Config, indentation: String) -> String { + func renderValues(_ values: String, separator: Character?, indentBy: Int) -> String { + guard let separator = separator else { return values } + return values + .split(separator: separator) + .joined(separator: (separator == " " ? "" : String(separator)) + config.newline + String(repeating: " ", count: indentBy + 1)) + } + + func separator(forKey key: String) -> Character? { + switch key { + case "class": + return " " + case "style": + return ";" + default: + return nil + } + } + + switch node { + case let .comment(string): + return indentation + "" + config.newline + case let .doctype(string): + return indentation + "" + config.newline + case let .element(tag, attrs, children): + let renderedAttrs = attrs + .compactMap { k, v -> String? in + let indentBy = indentation.count + tag.count + k.count + 3 + return v.map { + $0.isEmpty ? " \(k)" : " \(k)=\"\(renderValues($0, separator: separator(forKey: k), indentBy: indentBy))\"" + } + } + .joined(separator: config.newline + indentation + String(repeating: " ", count: tag.count + 1)) + guard !children.isEmpty || !voidElements.contains(tag) else { + return indentation + "<" + tag + renderedAttrs + ">" + config.newline + } + return indentation + "<" + tag + renderedAttrs + ">" + config.newline + + children.map { debugRenderHelp($0, config: config, indentation: indentation + config.indentation) }.joined() + + indentation + "" + config.newline + case let .raw(string): + return indentation + string + config.newline + case let .text(string): + return indentation + string + config.newline + } + } + + return debugRenderHelp(node, config: config, indentation: "") +} diff --git a/Sources/HtmlSnapshotTesting/HtmlSnapshotTesting.swift b/Sources/HtmlSnapshotTesting/HtmlSnapshotTesting.swift new file mode 100644 index 0000000..5f176ef --- /dev/null +++ b/Sources/HtmlSnapshotTesting/HtmlSnapshotTesting.swift @@ -0,0 +1,15 @@ +import Html +import SnapshotTesting + +extension Snapshotting where Value == [Node], Format == String { + public static var html: Snapshotting { + var snapshotting = SimplySnapshotting.lines + .pullback { (nodes: [Node]) in debugRender(nodes) } + snapshotting.pathExtension = "html" + return snapshotting + } +} + +extension Snapshotting where Value == Node, Format == String { + public static let html = Snapshotting<[Node], String>.html.pullback { [$0] } +} diff --git a/Tests/HtmlSnapshotTestingTests/HtmlSnapshotTestingTests.swift b/Tests/HtmlSnapshotTestingTests/HtmlSnapshotTestingTests.swift new file mode 100644 index 0000000..27d4246 --- /dev/null +++ b/Tests/HtmlSnapshotTestingTests/HtmlSnapshotTestingTests.swift @@ -0,0 +1,211 @@ +import Html +import HtmlSnapshotTesting +import SnapshotTesting +import XCTest + +#if !os(Linux) +typealias SnapshotTestCase = XCTestCase +#endif + +final class AriaTests: SnapshotTestCase { + func testSnapshots() { + let doc = [ + a(["foo1"]), + abbr([]), + abbr([], []), + address([]), + address([], []), + map(name: "foo2", [ + area([]) + ]), + article([]), + article([], []), + aside([]), + aside([], []), + audio([]), + audio([], []), + audio([], [track(src: "track1")], ["Fallback"]), + b([]), + b([], []), + bdi([]), + bdi([], []), + bdo(dir: .ltr, []), + bdo(dir: .ltr, [], []), + blockquote([]), + button([]), + canvas([]), + canvas([], []), + cite([]), + cite([], []), + code([]), + code([], []), + del([]), + del([], []), + details([ +// todo: `summary` returns ChildOf
but `details` only wants Node. is that correct? +// summary([]), +// summary([], []), +]), + dfn([]), + dfn([], []), + div([]), + dl([ + dd([]), + dd([], []), + dt([]), + dt([], []) + ]), + dl([], []), + em([]), + em([], []), + embed([]), + fieldset([ +// todo: `legend` returns ChildOf
but `fieldset` only wants Node. is that correct? +// legend([]), +// legend([], []), +]), + fieldset([], []), + figure([ + figcaption([]), + figcaption([], []) + ]), + figure([], []), + footer([]), + footer([], []), + form([]), + h1([]), + h1([], []), + h2([]), + h2([], []), + h3([]), + h3([], []), + h4([]), + h4([], []), + h5([]), + h5([], []), + h6([]), + h6([], []), + header([]), + header([], []), + hr([]), + html([ + head([ + base([]), + meta(contentType: .html), + meta(defaultStyle: "foo"), + meta(refresh: 1), + meta(applicationName: "foo"), + meta(author: "Blob"), + meta(description: "Functional programming."), + meta(generator: "foo"), + meta(keywords: ["math"]), + meta(name: "foo", content: "bar"), + meta(property: "foo", content: "bar"), + meta(viewport: Viewport.height(.deviceHeight)), + // todo: more of these ^ + script(""), + script([]), + script([], ""), + style(""), + style([], ""), + ]), + body([]) + ]), + i([]), + i([], []), + img(base64: "deadbeef", type: .image(.svg), alt: "", []), + ins([]), + ins([], []), + kbd([]), + kbd([], []), + label([]), + label([], []), + main([]), + main([], []), + mark([]), + mark([], []), + meter(value: 1, []), + meter(value: 2, [], []), + nav([]), + nav([], []), + object([], [param(name: "foo", value: "bar")]), + ol([ + li([]), + li([], []), + ]), + ol([], []), + optgroup([ + option("foo"), + option([], "foo"), + ]), + optgroup([], []), + output([]), + output([], []), + p([]), + p([], []), + pre([]), + pre([], []), + q([]), + q([], []), + s([]), + s([], []), + samp([]), + samp([], []), + script(""), + script([]), + script([], ""), + section([]), + section([], []), + select([]), + select([], []), + small([]), + small([], []), + span([]), + span([], []), + strong([]), + strong([], []), + sub([]), + sub([], []), + sup([]), + sup([], []), + svg(""), + svg([], ""), + table([ + caption([]), + caption([], []), + colgroup([ + col([]) + ]), + colgroup([], []), + tbody([]), + tbody([], []), + tfoot([]), + tfoot([], []), + thead([]), + thead([], []), + tr([ + th([]), + th([], []), + td([]), + td([], []) + ]), + tr([], []) + ]), + textarea(""), + time([]), + u([]), + u([], []), + ul([ + li([]), + li([], []), + ]), + ul([], []), + `var`([]), + `var`([], []), + video([], []), + ] + + assertSnapshot(matching: doc, as: .html) + } +} + diff --git a/Tests/HtmlSnapshotTestingTests/__Snapshots__/HtmlSnapshotTestingTests/testSnapshots.1.html b/Tests/HtmlSnapshotTestingTests/__Snapshots__/HtmlSnapshotTestingTests/testSnapshots.1.html new file mode 100644 index 0000000..67f1174 --- /dev/null +++ b/Tests/HtmlSnapshotTestingTests/__Snapshots__/HtmlSnapshotTestingTests/testSnapshots.1.html @@ -0,0 +1,357 @@ + + foo1 + + + + + +
+
+
+
+ + + +
+
+
+
+ + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + +
+
+ + + + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

+

+

+

+

+

+

+

+

+

+

+

+

+

+

+

+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ + + + + + + + + + + + + +
    +
  1. +
  2. +
  3. +
  4. +
+
    +
+ + + + + + + + + + +

+

+

+

+
+
+
+
+ + + + + + + + + + + + + + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + + + + +
    +
  • +
  • +
  • +
  • +
+
    +
+ + + + + diff --git a/project.yml b/project.yml index 25561eb..f19629b 100644 --- a/project.yml +++ b/project.yml @@ -1,30 +1,56 @@ name: Html -fileGroups: - - Html.playground options: bundleIdPrefix: co.pointfree - deploymentTarget: - iOS: 8.0 - macOS: 10.9 - tvOS: 9.0 - watchOS: 2.0 indentWidth: 2 tabWidth: 2 usesTabs: false targets: Html: + deploymentTarget: + iOS: 8.0 + macOS: 10.9 + tvOS: 9.0 + watchOS: 2.0 info: path: Info.plist platform: [macOS, iOS, tvOS, watchOS] scheme: testTargets: [HtmlTests_$platform] - sources: [Sources] + sources: [Sources/Html] type: framework HtmlTests: - dependencies: [{target: HtmlTests_$platform}] + dependencies: [{target: Html_$platform}] + deploymentTarget: + iOS: 10.0 + macOS: '10.10' + tvOS: 10.0 platform: [macOS, iOS, tvOS, watchOS] sources: - - path: Tests - excludes: - - LinuxMain.swift + - path: Tests/HtmlTests + type: bundle.unit-test + HtmlSnapshotTesting: + dependencies: + - target: Html_$platform + - framework: SnapshotTesting.framework + implicit: true + deploymentTarget: + iOS: 10.0 + macOS: '10.10' + tvOS: 10.0 + info: + path: Info.plist + platform: [macOS, iOS, tvOS, watchOS] + scheme: + testTargets: [HtmlSnapshotTestingTests_$platform] + sources: [Sources/HtmlSnapshotTesting] + type: framework + HtmlSnapshotTestingTests: + dependencies: [{target: HtmlSnapshotTesting_$platform}] + deploymentTarget: + iOS: 10.0 + macOS: '10.10' + tvOS: 10.0 + platform: [macOS, iOS, tvOS, watchOS] + sources: + - path: Tests/HtmlSnapshotTestingTests type: bundle.unit-test