blob: 81d7f0f782ad6d688a89854f965faa312a331e2e [file] [log] [blame]
David Reissea2cba82009-03-30 21:35:00 +00001--
2-- Licensed to the Apache Software Foundation (ASF) under one
3-- or more contributor license agreements. See the NOTICE file
4-- distributed with this work for additional information
5-- regarding copyright ownership. The ASF licenses this file
6-- to you under the Apache License, Version 2.0 (the
7-- "License"); you may not use this file except in compliance
8-- with the License. You may obtain a copy of the License at
9--
10-- http://www.apache.org/licenses/LICENSE-2.0
11--
12-- Unless required by applicable law or agreed to in writing,
13-- software distributed under the License is distributed on an
14-- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15-- KIND, either express or implied. See the License for the
16-- specific language governing permissions and limitations
17-- under the License.
18--
19
iproctorff8eb922007-07-25 19:06:13 +000020module Client where
21import Thrift
22import ThriftTest_Client
23import ThriftTest_Types
24import TSocket
25import TBinaryProtocol
26import qualified Data.Map as Map
27import qualified Data.Set as Set
28import Control.Monad
29t = TSocket "127.0.0.1" 9090 Nothing
30
31main = do to <- topen t
32 let p = TBinaryProtocol to
33 let ps = (p,p)
34 print =<< testString ps "bya"
35 print =<< testByte ps 8
36 print =<< testByte ps (-8)
37 print =<< testI32 ps 32
38 print =<< testI32 ps (-32)
39 print =<< testI64 ps 64
40 print =<< testI64 ps (-64)
41 print =<< testDouble ps 3.14
42 print =<< testDouble ps (-3.14)
43 print =<< testMap ps (Map.fromList [(1,1),(2,2),(3,3)])
44 print =<< testList ps [1,2,3,4,5]
45 print =<< testSet ps (Set.fromList [1,2,3,4,5])
46 print =<< testStruct ps (Xtruct (Just "hi") (Just 4) (Just 5) Nothing)
47 tclose to
David Reiss0c90f6f2008-02-06 22:18:40 +000048