Home | History | Annotate | Download | only in test
      1 // run
      2 
      3 // Copyright 2009 The Go Authors. All rights reserved.
      4 // Use of this source code is governed by a BSD-style
      5 // license that can be found in the LICENSE file.
      6 
      7 // Test the cap predeclared function applied to channels.
      8 
      9 package main
     10 
     11 func main() {
     12 	c := make(chan int, 10)
     13 	if len(c) != 0 || cap(c) != 10 {
     14 		println("chan len/cap ", len(c), cap(c), " want 0 10")
     15 		panic("fail")
     16 	}
     17 
     18 	for i := 0; i < 3; i++ {
     19 		c <- i
     20 	}
     21 	if len(c) != 3 || cap(c) != 10 {
     22 		println("chan len/cap ", len(c), cap(c), " want 3 10")
     23 		panic("fail")
     24 	}
     25 
     26 	c = make(chan int)
     27 	if len(c) != 0 || cap(c) != 0 {
     28 		println("chan len/cap ", len(c), cap(c), " want 0 0")
     29 		panic("fail")
     30 	}
     31 }
     32