Skip to content
This repository has been archived by the owner on Jun 19, 2018. It is now read-only.

Commit

Permalink
[TAY-44]: Create test UI for CollectionView
Browse files Browse the repository at this point in the history
  • Loading branch information
danthorpe committed Apr 11, 2016
1 parent 61c44db commit cfb2d18
Show file tree
Hide file tree
Showing 7 changed files with 73 additions and 7 deletions.
20 changes: 16 additions & 4 deletions TaylorSource.xcodeproj/project.pbxproj
Expand Up @@ -21,7 +21,7 @@
657AE2F51CB2DAE70076D15B /* DataSourceEditorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 657AE2F41CB2DAE70076D15B /* DataSourceEditorTests.swift */; };
6590FABC1CB1743400694DAF /* Helpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6590FABB1CB1743400694DAF /* Helpers.swift */; };
6590FABE1CB17CAA00694DAF /* Testable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6590FABD1CB17CAA00694DAF /* Testable.swift */; };
6590FAC01CB1819A00694DAF /* TestCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 6590FABF1CB1819A00694DAF /* TestCell.xib */; };
6590FAC01CB1819A00694DAF /* TestTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 6590FABF1CB1819A00694DAF /* TestTableViewCell.xib */; };
6590FAC21CB1A2C900694DAF /* ArrayDataSourceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6590FAC11CB1A2C900694DAF /* ArrayDataSourceTests.swift */; };
659354491CBB76F7000FAE70 /* FetchedResultsDataSourceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 659354481CBB76F7000FAE70 /* FetchedResultsDataSourceTests.swift */; };
6593544B1CBC1959000FAE70 /* CollectionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6593544A1CBC1959000FAE70 /* CollectionView.swift */; };
Expand All @@ -33,6 +33,9 @@
65E3FC791CBABC0D00479E0C /* ConformanceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65E3FC781CBABC0D00479E0C /* ConformanceTests.swift */; };
65E3FC7B1CBAC4F000479E0C /* TestTableViewHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65E3FC7A1CBAC4F000479E0C /* TestTableViewHeader.xib */; };
65E3FC7D1CBADCD900479E0C /* TableViewTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65E3FC7C1CBADCD900479E0C /* TableViewTests.swift */; };
65E3FC7F1CBC47C600479E0C /* CollectionViewTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65E3FC7E1CBC47C600479E0C /* CollectionViewTests.swift */; };
65E3FC811CBC47FD00479E0C /* TestCollectionViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65E3FC801CBC47FD00479E0C /* TestCollectionViewCell.xib */; };
65E3FC831CBC484500479E0C /* TestCollectionViewHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65E3FC821CBC484500479E0C /* TestCollectionViewHeader.xib */; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
Expand Down Expand Up @@ -64,7 +67,7 @@
657AE2F41CB2DAE70076D15B /* DataSourceEditorTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DataSourceEditorTests.swift; sourceTree = "<group>"; };
6590FABB1CB1743400694DAF /* Helpers.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Helpers.swift; sourceTree = "<group>"; };
6590FABD1CB17CAA00694DAF /* Testable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Testable.swift; sourceTree = "<group>"; };
6590FABF1CB1819A00694DAF /* TestCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = TestCell.xib; sourceTree = "<group>"; };
6590FABF1CB1819A00694DAF /* TestTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = TestTableViewCell.xib; sourceTree = "<group>"; };
6590FAC11CB1A2C900694DAF /* ArrayDataSourceTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ArrayDataSourceTests.swift; sourceTree = "<group>"; };
659354481CBB76F7000FAE70 /* FetchedResultsDataSourceTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FetchedResultsDataSourceTests.swift; sourceTree = "<group>"; };
6593544A1CBC1959000FAE70 /* CollectionView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = CollectionView.swift; path = Providers/CollectionView.swift; sourceTree = "<group>"; };
Expand All @@ -76,6 +79,9 @@
65E3FC781CBABC0D00479E0C /* ConformanceTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ConformanceTests.swift; sourceTree = "<group>"; };
65E3FC7A1CBAC4F000479E0C /* TestTableViewHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = TestTableViewHeader.xib; sourceTree = "<group>"; };
65E3FC7C1CBADCD900479E0C /* TableViewTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TableViewTests.swift; sourceTree = "<group>"; };
65E3FC7E1CBC47C600479E0C /* CollectionViewTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CollectionViewTests.swift; sourceTree = "<group>"; };
65E3FC801CBC47FD00479E0C /* TestCollectionViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = TestCollectionViewCell.xib; sourceTree = "<group>"; };
65E3FC821CBC484500479E0C /* TestCollectionViewHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = TestCollectionViewHeader.xib; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
Expand Down Expand Up @@ -145,6 +151,7 @@
6508498E1CB15C94005C7E6F /* Info.plist */,
6590FAC11CB1A2C900694DAF /* ArrayDataSourceTests.swift */,
65E3FC761CBAAA2900479E0C /* CellDataSourceTests.swift */,
65E3FC7E1CBC47C600479E0C /* CollectionViewTests.swift */,
65E3FC781CBABC0D00479E0C /* ConformanceTests.swift */,
657AE2F41CB2DAE70076D15B /* DataSourceEditorTests.swift */,
6508498C1CB15C94005C7E6F /* DataSourceTests.swift */,
Expand All @@ -153,8 +160,10 @@
6590FABB1CB1743400694DAF /* Helpers.swift */,
65E3FC7C1CBADCD900479E0C /* TableViewTests.swift */,
6590FABD1CB17CAA00694DAF /* Testable.swift */,
6590FABF1CB1819A00694DAF /* TestCell.xib */,
6590FABF1CB1819A00694DAF /* TestTableViewCell.xib */,
65E3FC7A1CBAC4F000479E0C /* TestTableViewHeader.xib */,
65E3FC801CBC47FD00479E0C /* TestCollectionViewCell.xib */,
65E3FC821CBC484500479E0C /* TestCollectionViewHeader.xib */,
);
path = Tests;
sourceTree = "<group>";
Expand Down Expand Up @@ -296,7 +305,9 @@
buildActionMask = 2147483647;
files = (
65E3FC7B1CBAC4F000479E0C /* TestTableViewHeader.xib in Resources */,
6590FAC01CB1819A00694DAF /* TestCell.xib in Resources */,
65E3FC831CBC484500479E0C /* TestCollectionViewHeader.xib in Resources */,
6590FAC01CB1819A00694DAF /* TestTableViewCell.xib in Resources */,
65E3FC811CBC47FD00479E0C /* TestCollectionViewCell.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -331,6 +342,7 @@
657AE2F51CB2DAE70076D15B /* DataSourceEditorTests.swift in Sources */,
6590FABE1CB17CAA00694DAF /* Testable.swift in Sources */,
6590FABC1CB1743400694DAF /* Helpers.swift in Sources */,
65E3FC7F1CBC47C600479E0C /* CollectionViewTests.swift in Sources */,
6508498F1CB15C94005C7E6F /* DataSourceTests.swift in Sources */,
6590FAC21CB1A2C900694DAF /* ArrayDataSourceTests.swift in Sources */,
65E3FC791CBABC0D00479E0C /* ConformanceTests.swift in Sources */,
Expand Down
9 changes: 9 additions & 0 deletions Tests/CollectionViewTests.swift
@@ -0,0 +1,9 @@
//
// CollectionViewTests.swift
// TaylorSource
//
// Created by Daniel Thorpe on 11/04/2016.
// Copyright © 2016 Daniel Thorpe. All rights reserved.
//

import Foundation
2 changes: 1 addition & 1 deletion Tests/FactoryTests.swift
Expand Up @@ -63,7 +63,7 @@ class FactoryCellRegistrarTypeTests: FactoryTests {
}

func test__registerCell__nibWithIdentifier__viewRegistersNibWithIdentifier() {
factory.registerCell(.NibWithIdentifier(TestCell.nib, cellIdentifier), inView: tableView) { _, _, _ in }
factory.registerCell(.NibWithIdentifier(TestTableViewCell.nib, cellIdentifier), inView: tableView) { _, _, _ in }
guard let (registeredNib, withIdentifier) = tableView.didRegisterNibWithIdentifier else {
XCTFail("Table View did not register class with identifier"); return
}
Expand Down
21 changes: 21 additions & 0 deletions Tests/TestCollectionViewCell.xib
@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="10116" systemVersion="15E65" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="10085"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="Test Cell Identifier" id="YPO-EP-jLK" customClass="TestCollectionViewCell">
<rect key="frame" x="0.0" y="0.0" width="50" height="50"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
<rect key="frame" x="0.0" y="0.0" width="50" height="50"/>
<autoresizingMask key="autoresizingMask"/>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</view>
<point key="canvasLocation" x="430" y="510"/>
</collectionViewCell>
</objects>
</document>
16 changes: 16 additions & 0 deletions Tests/TestCollectionViewHeader.xib
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="10116" systemVersion="15E65" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="10085"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<collectionReusableView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="Test Header View Identifier" id="jid-3b-QXf" customClass="TestCollectionViewHeader">
<rect key="frame" x="0.0" y="0.0" width="320" height="50"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<point key="canvasLocation" x="433" y="540"/>
</collectionReusableView>
</objects>
</document>
2 changes: 1 addition & 1 deletion Tests/TestCell.xib → Tests/TestTableViewCell.xib
Expand Up @@ -7,7 +7,7 @@
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="Test Cell Identifier" id="nUc-oM-FoH" customClass="TestCell" customModule="TaylorSourceTests" customModuleProvider="target">
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="Test Cell Identifier" id="nUc-oM-FoH" customClass="TestTableViewCell">
<rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="nUc-oM-FoH" id="zbo-mm-Wws">
Expand Down
10 changes: 9 additions & 1 deletion Tests/Testable.swift
Expand Up @@ -9,14 +9,22 @@
import XCTest
@testable import TaylorSource

class TestCell: UITableViewCell, ReusableViewType {
class TestTableViewCell: UITableViewCell, ReusableViewType {
static let reuseIdentifier = "Test Cell Identifier"
}

class TestTableViewHeader: UITableViewHeaderFooterView, ReusableViewType {
static let reuseIdentifier = "Test Header View Identifier"
}

class TestCollectionViewCell: UITableViewCell, ReusableViewType {
static let reuseIdentifier = "Test Cell Identifier"
}

class TestCollectionViewHeader: UITableViewHeaderFooterView, ReusableViewType {
static let reuseIdentifier = "Test Header View Identifier"
}

class TestableTable: UITableView {

var didRegisterClassWithIdentifier: (AnyClass?, String)? = .None
Expand Down

0 comments on commit cfb2d18

Please sign in to comment.