@@ -723,133 +723,133 @@ class CurrentValuePublisherTests: XCTestCase {
723723 XCTAssertEqual ( values, [ [ 100 , 200 ] , [ 101 , 200 ] , [ 102 , 200 ] , [ 102 , 201 ] ] )
724724 }
725725
726- // // ============================================================================ //
727- // // MARK: - Boolean Operators
728- // // ============================================================================ //
729- //
730- // func testBooleanAnd_constants() {
731- // var cancellables = Set<AnyCancellable>()
732- // var values = [Bool]()
733- //
734- // let publisher1 = CurrentValuePublisher<Bool, Never>(value: false)
735- // let publisher2 = CurrentValuePublisher<Bool, Never>(value: true)
736- //
737- // publisher1.and(publisher2)
738- // .sink { values.append($0) }
739- // .store(in: &cancellables)
740- //
741- // XCTAssertEqual(values, [false])
742- // }
743- //
744- // func testBooleanAnd_subjectAndConstant() {
745- // var cancellables = Set<AnyCancellable>()
746- // var values = [Bool]()
747- //
748- // let subject1 = CurrentValueSubject<Bool, Never>(false)
749- // let publisher1 = CurrentValuePublisher(subject1)
750- //
751- // let publisher2 = CurrentValuePublisher<Bool, Never>(value: true)
752- //
753- // publisher1.and(publisher2)
754- // .sink { values.append($0) }
755- // .store(in: &cancellables)
756- //
757- // XCTAssertEqual(values, [false])
758- //
759- // subject1.value = true
760- // XCTAssertEqual(values, [false, true])
761- //
762- // subject1.value = false
763- // XCTAssertEqual(values, [false, true, false])
764- // }
765- //
766- // func testBooleanAnd_subjects() {
767- // var cancellables = Set<AnyCancellable>()
768- // var values = [Bool]()
769- //
770- // let subject1 = CurrentValueSubject<Bool, Never>(false)
771- // let publisher1 = CurrentValuePublisher(subject1)
772- //
773- // let subject2 = CurrentValueSubject<Bool, Never>(false)
774- // let publisher2 = CurrentValuePublisher(subject2)
775- //
776- // publisher1.and(publisher2)
777- // .sink { values.append($0) }
778- // .store(in: &cancellables)
779- //
780- // XCTAssertEqual(values, [false])
781- //
782- // subject1.value = true
783- // XCTAssertEqual(values, [false, false])
784- //
785- // subject2.value = true
786- // XCTAssertEqual(values, [false, false, true])
787- //
788- // subject1.value = false
789- // XCTAssertEqual(values, [false, false, true, false])
790- // }
791- //
792- // func testBooleanOr_constants() {
793- // var cancellables = Set<AnyCancellable>()
794- // var values = [Bool]()
795- //
796- // let publisher1 = CurrentValuePublisher<Bool, Never>(value: false)
797- // let publisher2 = CurrentValuePublisher<Bool, Never>(value: true)
798- //
799- // publisher1.or(publisher2)
800- // .sink { values.append($0) }
801- // .store(in: &cancellables)
802- //
803- // XCTAssertEqual(values, [true])
804- // }
805- //
806- // func testBooleanOr_subjectAndConstant() {
807- // var cancellables = Set<AnyCancellable>()
808- // var values = [Bool]()
809- //
810- // let subject1 = CurrentValueSubject<Bool, Never>(false)
811- // let publisher1 = CurrentValuePublisher(subject1)
812- //
813- // let publisher2 = CurrentValuePublisher<Bool, Never>(value: false)
814- //
815- // publisher1.or(publisher2)
816- // .sink { values.append($0) }
817- // .store(in: &cancellables)
818- //
819- // XCTAssertEqual(values, [false])
820- //
821- // subject1.value = true
822- // XCTAssertEqual(values, [false, true])
823- //
824- // subject1.value = false
825- // XCTAssertEqual(values, [false, true, false])
826- // }
827- //
828- // func testBooleanOr_subjects() {
829- // var cancellables = Set<AnyCancellable>()
830- // var values = [Bool]()
831- //
832- // let subject1 = CurrentValueSubject<Bool, Never>(true)
833- // let publisher1 = CurrentValuePublisher(subject1)
834- //
835- // let subject2 = CurrentValueSubject<Bool, Never>(true)
836- // let publisher2 = CurrentValuePublisher(subject2)
837- //
838- // publisher1.or(publisher2)
839- // .sink { values.append($0) }
840- // .store(in: &cancellables)
841- //
842- // XCTAssertEqual(values, [true])
843- //
844- // subject1.value = false
845- // XCTAssertEqual(values, [true, true])
846- //
847- // subject2.value = false
848- // XCTAssertEqual(values, [true, true, false])
849- //
850- // subject1.value = true
851- // XCTAssertEqual(values, [true, true, false, true])
852- // }
726+ // ============================================================================ //
727+ // MARK: - Boolean Operators
728+ // ============================================================================ //
729+
730+ func testBooleanAnd_constants( ) {
731+ var cancellables = Set < AnyCancellable > ( )
732+ var values = [ Bool] ( )
733+
734+ let publisher1 = CurrentValuePublisher < Bool , Never > ( value: false )
735+ let publisher2 = CurrentValuePublisher < Bool , Never > ( value: true )
736+
737+ publisher1. and ( publisher2)
738+ . sink { values. append ( $0) }
739+ . store ( in: & cancellables)
740+
741+ XCTAssertEqual ( values, [ false ] )
742+ }
743+
744+ func testBooleanAnd_subjectAndConstant( ) {
745+ var cancellables = Set < AnyCancellable > ( )
746+ var values = [ Bool] ( )
747+
748+ let subject1 = CurrentValueSubject < Bool , Never > ( false )
749+ let publisher1 = CurrentValuePublisher ( subject1)
750+
751+ let publisher2 = CurrentValuePublisher < Bool , Never > ( value: true )
752+
753+ publisher1. and ( publisher2)
754+ . sink { values. append ( $0) }
755+ . store ( in: & cancellables)
756+
757+ XCTAssertEqual ( values, [ false ] )
758+
759+ subject1. value = true
760+ XCTAssertEqual ( values, [ false , true ] )
761+
762+ subject1. value = false
763+ XCTAssertEqual ( values, [ false , true , false ] )
764+ }
765+
766+ func testBooleanAnd_subjects( ) {
767+ var cancellables = Set < AnyCancellable > ( )
768+ var values = [ Bool] ( )
769+
770+ let subject1 = CurrentValueSubject < Bool , Never > ( false )
771+ let publisher1 = CurrentValuePublisher ( subject1)
772+
773+ let subject2 = CurrentValueSubject < Bool , Never > ( false )
774+ let publisher2 = CurrentValuePublisher ( subject2)
775+
776+ publisher1. and ( publisher2)
777+ . sink { values. append ( $0) }
778+ . store ( in: & cancellables)
779+
780+ XCTAssertEqual ( values, [ false ] )
781+
782+ subject1. value = true
783+ XCTAssertEqual ( values, [ false , false ] )
784+
785+ subject2. value = true
786+ XCTAssertEqual ( values, [ false , false , true ] )
787+
788+ subject1. value = false
789+ XCTAssertEqual ( values, [ false , false , true , false ] )
790+ }
791+
792+ func testBooleanOr_constants( ) {
793+ var cancellables = Set < AnyCancellable > ( )
794+ var values = [ Bool] ( )
795+
796+ let publisher1 = CurrentValuePublisher < Bool , Never > ( value: false )
797+ let publisher2 = CurrentValuePublisher < Bool , Never > ( value: true )
798+
799+ publisher1. or ( publisher2)
800+ . sink { values. append ( $0) }
801+ . store ( in: & cancellables)
802+
803+ XCTAssertEqual ( values, [ true ] )
804+ }
805+
806+ func testBooleanOr_subjectAndConstant( ) {
807+ var cancellables = Set < AnyCancellable > ( )
808+ var values = [ Bool] ( )
809+
810+ let subject1 = CurrentValueSubject < Bool , Never > ( false )
811+ let publisher1 = CurrentValuePublisher ( subject1)
812+
813+ let publisher2 = CurrentValuePublisher < Bool , Never > ( value: false )
814+
815+ publisher1. or ( publisher2)
816+ . sink { values. append ( $0) }
817+ . store ( in: & cancellables)
818+
819+ XCTAssertEqual ( values, [ false ] )
820+
821+ subject1. value = true
822+ XCTAssertEqual ( values, [ false , true ] )
823+
824+ subject1. value = false
825+ XCTAssertEqual ( values, [ false , true , false ] )
826+ }
827+
828+ func testBooleanOr_subjects( ) {
829+ var cancellables = Set < AnyCancellable > ( )
830+ var values = [ Bool] ( )
831+
832+ let subject1 = CurrentValueSubject < Bool , Never > ( true )
833+ let publisher1 = CurrentValuePublisher ( subject1)
834+
835+ let subject2 = CurrentValueSubject < Bool , Never > ( true )
836+ let publisher2 = CurrentValuePublisher ( subject2)
837+
838+ publisher1. or ( publisher2)
839+ . sink { values. append ( $0) }
840+ . store ( in: & cancellables)
841+
842+ XCTAssertEqual ( values, [ true ] )
843+
844+ subject1. value = false
845+ XCTAssertEqual ( values, [ true , true ] )
846+
847+ subject2. value = false
848+ XCTAssertEqual ( values, [ true , true , false ] )
849+
850+ subject1. value = true
851+ XCTAssertEqual ( values, [ true , true , false , true ] )
852+ }
853853
854854 // ============================================================================ //
855855 // MARK: - Deinitialization
0 commit comments