<commit_before>import XCTest
@testable import Euler

final class LogicTests: XCTestCase {
    func testLogicalNegation() {
        XCTAssertEqual(¬true, !true)
        XCTAssertEqual(~true, !true)
    }
    
    func testLogicalConjunction() {
        XCTAssertEqual(true ∧ false, true && false)
    }
    
    func testLogicalDisjunction() {
        XCTAssertEqual(true ∨ false, true || false)
    }
    
//    func testLogicalXOR() {
//        XCTAssertEqual(true ⊻ false, true ^ false)
//        XCTAssertEqual(true ⊕ false, true ^ false)
//        XCTAssertEqual(true ↮ false, true ^ false)
//        XCTAssertEqual(true ≢ false, true ^ false)
//    }
    
//    func testLogicalNAND() {
//        XCTAssertEqual(true ⊼ false, !(true ^ false))
//        XCTAssertEqual(true ↑ false, !(true ^ false))
//    }
    
    func testLogicalNOR() {
        XCTAssertEqual(true ⊽ false, !(true || false))
        XCTAssertEqual(true ↓ false, !(true || false))
    }
    
    static var allTests = [
        ("testLogicalNegation", testLogicalNegation),
        ("testLogicalConjunction", testLogicalConjunction),
        ("testLogicalDisjunction", testLogicalDisjunction),
//        ("testLogicalXOR", testLogicalXOR),
//        ("testLogicalNAND", testLogicalNAND),
        ("testLogicalNOR", testLogicalNOR)
    ]
}<commit_msg>Enable logical XOR and logical NAND test<commit_after>import XCTest
@testable import Euler

final class LogicTests: XCTestCase {
    func testLogicalNegation() {
        XCTAssertEqual(¬true, !true)
        XCTAssertEqual(~true, !true)
    }

    func testLogicalConjunction() {
        XCTAssertEqual(true ∧ false, true && false)
    }

    func testLogicalDisjunction() {
        XCTAssertEqual(true ∨ false, true || false)
    }

    func testLogicalXOR() {
        XCTAssertEqual(true ⊻ false, true != false)
        XCTAssertEqual(true ⊕ false, true != false)
        XCTAssertEqual(true ↮ false, true != false)
        XCTAssertEqual(true ≢ false, true != false)
    }

    func testLogicalNAND() {
        XCTAssertEqual(true ⊼ false, !(true && false))
        XCTAssertEqual(true ↑ false, !(true && false))
    }

    func testLogicalNOR() {
        XCTAssertEqual(true ⊽ false, !(true || false))
        XCTAssertEqual(true ↓ false, !(true || false))
    }

    static var allTests = [
        ("testLogicalNegation", testLogicalNegation),
        ("testLogicalConjunction", testLogicalConjunction),
        ("testLogicalDisjunction", testLogicalDisjunction),
        ("testLogicalXOR", testLogicalXOR),
        ("testLogicalNAND", testLogicalNAND),
        ("testLogicalNOR", testLogicalNOR)
    ]
}
{'fraction_non_alphanumeric': 0.12153437143942271, 'fraction_numerical': 0.0, 'mean_word_length': 2.7574893009985733, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6591816', 'n_tokens_mistral': 889, 'n_tokens_neox': 841, 'n_words': 186}