| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| import XCTest |
| import Foundation |
| @testable import Thrift |
| |
| private protocol CalculatorService { } |
| |
| private class Calculator: CalculatorService { } |
| |
| private class CalculatorProcessor: TProcessor { |
| private let service: CalculatorService |
| |
| init(service: CalculatorService) { |
| self.service = service |
| } |
| |
| var processCalled = false |
| func process(on inProtocol: TProtocol, outProtocol: TProtocol) throws { |
| processCalled = true |
| } |
| } |
| |
| class TSocketServerTests: XCTestCase { |
| func testInit() throws { |
| let service: CalculatorService = Calculator() |
| let processor: CalculatorProcessor = CalculatorProcessor(service: service) |
| let _: TSocketServer<TBinaryProtocol, TBinaryProtocol, CalculatorProcessor> = |
| try TSocketServer(port: 9090, inProtocol: TBinaryProtocol.self, outProtocol: TBinaryProtocol.self, processor: processor) |
| } |
| |
| static var allTests : [(String, (TSocketServerTests) -> () throws -> Void)] { |
| return [ |
| ("testInit", testInit), |
| ] |
| } |
| |
| } |