damus

nostr ios client
git clone git://jb55.com/damus
Log | Files | Refs | README | LICENSE

LargeEventTests.swift (1338B)


      1 //
      2 //  LargeEventTests.swift
      3 //  damusTests
      4 //
      5 //  Created by William Casarin on 2023-08-05.
      6 //
      7 
      8 import XCTest
      9 @testable import damus
     10 
     11 final class LargeEventTests: XCTestCase {
     12 
     13     func testLongPost() throws {
     14         let json = "[\"EVENT\",\"subid\",\(test_failing_nostr_report)]"
     15         let resp = NostrResponse.owned_from_json(json: json)
     16 
     17         XCTAssertNotNil(resp)
     18         guard let resp,
     19               case .event(let subid, let ev) = resp
     20         else {
     21             XCTAssertFalse(true)
     22             return
     23         }
     24 
     25         XCTAssertEqual(subid, "subid")
     26         XCTAssertTrue(ev.should_show_event)
     27         XCTAssertTrue(!ev.too_big)
     28         XCTAssertTrue(should_show_event(state: test_damus_state, ev: ev))
     29         XCTAssertTrue(validate_event(ev: ev) == .ok)
     30     }
     31 
     32     func testIsHellthread() throws {
     33         let json = "[\"EVENT\",\"subid\",\(test_failing_nostr_report)]"
     34         let resp = NostrResponse.owned_from_json(json: json)
     35 
     36         XCTAssertNotNil(resp)
     37         guard let resp,
     38               case .event(let subid, let ev) = resp
     39         else {
     40             XCTAssertFalse(true)
     41             return
     42         }
     43 
     44         XCTAssertEqual(subid, "subid")
     45         XCTAssertTrue(ev.should_show_event)
     46         XCTAssertTrue(ev.is_hellthread(max_pubkeys: 10))
     47         XCTAssertTrue(validate_event(ev: ev) == .ok)
     48     }
     49 
     50 }