//  Copyright © 2015 Rob Rix. All rights reserved.

final class BooleanTests: XCTestCase {
	func testModuleTypechecks() {
		module.typecheck().forEach { XCTFail($0.description) }
	}

	func testAutomaticallyEncodedDefinitionsAreEquivalentToHandEncodedDefinitions() {
		let churchModule = Module<Term>.churchBoolean
		module.definitions.forEach { symbol, type, value in
			assert(churchModule.context[symbol], ==, type, message: "\(symbol)")
			assert(churchModule.environment[symbol], ==, value, message: "\(symbol)")
		}
	}
}

private let module = Module<Term>.boolean


import Assertions
import Manifold
import XCTest

//  Copyright © 2015 Rob Rix. All rights reserved.

final class BooleanTests: XCTestCase {
	func testModuleTypechecks() {
		module.typecheck().forEach { XCTFail($0.description) }
	}
}


private let module = Module<Term>.boolean


import Manifold
import XCTest

--- 
+++ 
@@ -4,11 +4,19 @@
 	func testModuleTypechecks() {
 		module.typecheck().forEach { XCTFail($0.description) }
 	}
+
+	func testAutomaticallyEncodedDefinitionsAreEquivalentToHandEncodedDefinitions() {
+		let churchModule = Module<Term>.churchBoolean
+		module.definitions.forEach { symbol, type, value in
+			assert(churchModule.context[symbol], ==, type, message: "\(symbol)")
+			assert(churchModule.environment[symbol], ==, value, message: "\(symbol)")
+		}
+	}
 }
-
 
 private let module = Module<Term>.boolean
 
 
+import Assertions
 import Manifold
 import XCTest
Test that hand-encoded booleans are equal to the automatic encodings.
