���� JFIF �� � ( %"1"%)+...383,7(-.-
![]() Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20 System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 User : apache ( 48) PHP Version : 7.4.20 Disable Function : NONE Directory : /var/www/html/st2/vendor/google/protobuf/examples/ |
package main import ( "bytes" "strings" "testing" pb "github.com/google/protobuf/examples/tutorial" ) func TestWritePersonWritesPerson(t *testing.T) { buf := new(bytes.Buffer) // [START populate_proto] p := pb.Person{ Id: 1234, Name: "John Doe", Email: "[email protected]", Phones: []*pb.Person_PhoneNumber{ {Number: "555-4321", Type: pb.Person_HOME}, }, } // [END populate_proto] writePerson(buf, &p) got := buf.String() want := `Person ID: 1234 Name: John Doe E-mail address: [email protected] Home phone #: 555-4321 ` if got != want { t.Errorf("writePerson(%s) =>\n\t%q, want %q", p.String(), got, want) } } func TestListPeopleWritesList(t *testing.T) { buf := new(bytes.Buffer) in := pb.AddressBook{People: []*pb.Person { { Name: "John Doe", Id: 101, Email: "[email protected]", }, { Name: "Jane Doe", Id: 102, }, { Name: "Jack Doe", Id: 201, Email: "[email protected]", Phones: []*pb.Person_PhoneNumber{ {Number: "555-555-5555", Type: pb.Person_WORK}, }, }, { Name: "Jack Buck", Id: 301, Email: "[email protected]", Phones: []*pb.Person_PhoneNumber{ {Number: "555-555-0000", Type: pb.Person_HOME}, {Number: "555-555-0001", Type: pb.Person_MOBILE}, {Number: "555-555-0002", Type: pb.Person_WORK}, }, }, { Name: "Janet Doe", Id: 1001, Email: "[email protected]", Phones: []*pb.Person_PhoneNumber{ {Number: "555-777-0000"}, {Number: "555-777-0001", Type: pb.Person_HOME}, }, }, }} listPeople(buf, &in) want := strings.Split(`Person ID: 101 Name: John Doe E-mail address: [email protected] Person ID: 102 Name: Jane Doe Person ID: 201 Name: Jack Doe E-mail address: [email protected] Work phone #: 555-555-5555 Person ID: 301 Name: Jack Buck E-mail address: [email protected] Home phone #: 555-555-0000 Mobile phone #: 555-555-0001 Work phone #: 555-555-0002 Person ID: 1001 Name: Janet Doe E-mail address: [email protected] Mobile phone #: 555-777-0000 Home phone #: 555-777-0001 `, "\n") got := strings.Split(buf.String(), "\n") if len(got) != len(want) { t.Errorf( "listPeople(%s) =>\n\t%q has %d lines, want %d", in.String(), buf.String(), len(got), len(want)) } lines := len(got) if lines > len(want) { lines = len(want) } for i := 0; i < lines; i++ { if got[i] != want[i] { t.Errorf( "listPeople(%s) =>\n\tline %d %q, want %q", in.String(), i, got[i], want[i]) } } }