From 109a3dc43550d719bd202fe5d425d2ba8c6fc842 Mon Sep 17 00:00:00 2001 From: takeda1411123 Date: Fri, 10 Sep 2021 16:33:36 +0900 Subject: [PATCH 1/7] create test code --- kadai2/README.md | 34 +++++++ kadai2/convert/convert.go | 92 ++++++++++++++++++ kadai2/convert/convert_test.go | 66 +++++++++++++ kadai2/go.mod | 3 + kadai2/go.sum | 29 ++++++ kadai2/images/subimages/test_image1.png | Bin 0 -> 19996 bytes kadai2/main.go | 44 +++++++++ kadai2/test_images/test_image1.jpeg | Bin 0 -> 1981 bytes kadai2/test_images/test_image2.jpeg | Bin 0 -> 2255 bytes kadai2/test_images/test_image3 | Bin 0 -> 6083 bytes kadai2/test_images/test_image3.tttt | Bin 0 -> 6083 bytes .../test_subimages/test_image1.jpeg | Bin 0 -> 5509 bytes .../test_subimages/test_image1.png | Bin 0 -> 5509 bytes .../test_subimages/test_image2.jpeg | Bin 0 -> 6083 bytes .../test_subimages/test_image2.png | Bin 0 -> 6083 bytes kadai2/test_images/test_subimages/test_image3 | Bin 0 -> 6083 bytes .../test_subimages/test_image3.tttt | Bin 0 -> 6083 bytes 17 files changed, 268 insertions(+) create mode 100644 kadai2/README.md create mode 100644 kadai2/convert/convert.go create mode 100644 kadai2/convert/convert_test.go create mode 100644 kadai2/go.mod create mode 100644 kadai2/go.sum create mode 100644 kadai2/images/subimages/test_image1.png create mode 100644 kadai2/main.go create mode 100644 kadai2/test_images/test_image1.jpeg create mode 100644 kadai2/test_images/test_image2.jpeg create mode 100644 kadai2/test_images/test_image3 create mode 100644 kadai2/test_images/test_image3.tttt create mode 100644 kadai2/test_images/test_subimages/test_image1.jpeg create mode 100644 kadai2/test_images/test_subimages/test_image1.png create mode 100644 kadai2/test_images/test_subimages/test_image2.jpeg create mode 100644 kadai2/test_images/test_subimages/test_image2.png create mode 100644 kadai2/test_images/test_subimages/test_image3 create mode 100644 kadai2/test_images/test_subimages/test_image3.tttt diff --git a/kadai2/README.md b/kadai2/README.md new file mode 100644 index 00000000..ad9e475c --- /dev/null +++ b/kadai2/README.md @@ -0,0 +1,34 @@ +# 課題2 + +## 1. io.Readerとio.Writerについて調べてみよう + +### 標準パッケージでどのように使われているか +【io.Reader】 +* io.Readerは、入力処理の基本インターフェース +* `Read(p []byte) (n int, err error)` をもつインターフェース +* バイト列を読み出すインターフェース +* io.Writerは、出力処理の基本インターフェース + +### io.Readerとio.Writerがあることでどういう利点があるのか具体例を挙げて考えてみる +* 様々な場面で出てくる入出力にio.Readerインターフェースに準拠しているため、汎用性に優れている。 +* Read関数を実装している型を抽象化して扱うことができる。ファイル、文字列、メモリのデータ、ネットワーク接続情報等。 +* 入力の値を明確に意識しなくても、シンプルに実装が可能。 + +[参考サイト](https://qiita.com/ktnyt/items/8ede94469ba8b1399b12) + +## 2. テストを書いてみよう + +### 1回目の課題のテストを作ってみて下さい +#### 課題要件 +* テストのしやすさを考えてリファクタリングしてみる +* テストのカバレッジを取ってみる +* テーブル駆動テストを行う +* テストヘルパーを作ってみる + +#### Usage +`cd convert` +`go test` + +#### カバレッジ + + diff --git a/kadai2/convert/convert.go b/kadai2/convert/convert.go new file mode 100644 index 00000000..303f33aa --- /dev/null +++ b/kadai2/convert/convert.go @@ -0,0 +1,92 @@ +package convert + +import ( + "io/ioutil" + "path/filepath" + "os" + "image" + "image/jpeg" + "image/png" + "errors" +) + +// user defined type +type Conv struct { + From string + To string + Dir string +} + +// create Conv +func NewConv(from string, to string, dir string)(*Conv, error){ + return &Conv{from, to, dir}, nil +} + +// search directory +func (conv *Conv)FileSearch(dir string, from string)([]string, error){ + var paths []string + files, err := ioutil.ReadDir(dir) + if err != nil { + return nil, err + } + + for _, file := range files { + if file.IsDir() { + subpaths, err := conv.FileSearch(filepath.Join(dir, file.Name()), from) + paths = append(paths, subpaths...) + if err != nil { + return nil, err + } + continue + } + ext := filepath.Ext(file.Name()) + + if ext !="" && ext[1:] == from { + fullpath := filepath.Join(dir, file.Name()) + paths = append(paths, fullpath) + } + } + return paths, err +} + +// replace filepath +func (conv *Conv) Convert(path string, to string) (error) { + inputFile, err := os.Open(path) + if err != nil { + return err + } + defer inputFile.Close() + + img, _, err := image.Decode(inputFile) + if err != nil { + return err + } + + out_file, err := os.Create(path[:len(path)-len(filepath.Ext(path))+1] + to) + if err != nil { + return err + } + defer out_file.Close() + + switch to { + case "jpg", "jpeg" : + err := jpeg.Encode(out_file, img, &jpeg.Options{}) + if err != nil { + return err + } + case "png" : + err := png.Encode(out_file, img) + if err != nil { + return err + } + default: + errors.New("wrong after extension") + } + + err = os.Remove(path) + if err != nil { + return err + } + + return err +} diff --git a/kadai2/convert/convert_test.go b/kadai2/convert/convert_test.go new file mode 100644 index 00000000..285eab8e --- /dev/null +++ b/kadai2/convert/convert_test.go @@ -0,0 +1,66 @@ +package convert_test + +import ( + "testing" + "reflect" + "convert/convert" +) + +func TestFileSearch(t *testing.T) { + cases := []struct{ + name string + from string + dir string + output []string + }{ + {name : "jpeg, current_dir" , from : "jpeg", dir : "../test_images", output : []string{"../test_images/test_image1.jpeg", "../test_images/test_image2.jpeg","../test_images/test_subimages/test_image1.jpeg","../test_images/test_subimages/test_image2.jpeg"}}, + {name : "png, current_dir" , from : "png", dir : "../test_images", output : []string{"../test_images/test_image1.png", "../test_images/test_image2.png","../test_images/test_subimages/test_image1.png","../test_images/test_subimages/test_image2.png"}}, + {name : "jpeg, sub_dir" , from : "jpeg", dir : "../test_images/test_subimages", output : []string{"../test_images/test_subimages/test_image1.jpeg","../test_images/test_subimages/test_image2.jpeg"}}, + {name : "png, sub_dir" , from : "png", dir : "../test_images/test_subimages", output : []string{"../test_images/test_subimages/test_image1.png","../test_images/test_subimages/test_image2.png"}}, + } + + for _, c := range cases { + t.Run(c.name, func(t *testing.T) { + conv := &convert.Conv{c.from, "", c.dir} + paths, err := conv.FileSearch(c.dir, c.from); + if err != nil { + t.Error(err) + } + if !reflect.DeepEqual(paths, c.output) { + t.Errorf("invalid result. testCase:%#v, actual:%v", c.output, paths) + } + }) + } +} + +func CheckErr(t *testing.T, err error) bool { + t.Helper() + if err !=nil { + t.Errorf("%s",err) + return true + } + return false +} + +func TestConvert (t *testing.T) { + cases := []struct{ + name string + path string + to string + output error + }{ + {name : "jpeg, png" , path : "../test_images/test_image1.jpeg", to : "png", output : nil}, + {name : "jpeg, png" , path : "../test_images/test_image2.jpeg", to : "png", output : nil}, + {name : "png, jpeg" , path : "../test_images/test_image1.png", to : "jpeg", output : nil}, + {name : "png, jpeg" , path : "../test_images/test_image2.png", to : "jpeg", output : nil}, + } + + conv := &convert.Conv{"", "", ""} + for _, c := range cases { + err := conv.Convert(c.path, c.to) + ch := CheckErr(t, err) + if !ch && err != c.output { + t.Errorf("invalid result. testCase:%#v, actual:%v", c.output, err) + } + } +} diff --git a/kadai2/go.mod b/kadai2/go.mod new file mode 100644 index 00000000..c2b01a1d --- /dev/null +++ b/kadai2/go.mod @@ -0,0 +1,3 @@ +module convert + +go 1.14 diff --git a/kadai2/go.sum b/kadai2/go.sum new file mode 100644 index 00000000..9b6bac85 --- /dev/null +++ b/kadai2/go.sum @@ -0,0 +1,29 @@ +github.com/yuin/goldmark v1.3.5 h1:dPmz1Snjq0kmkz159iL7S6WzdahUTHnHB5M56WFVifs= +github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/mod v0.4.2 h1:Gz96sIWK3OalVv/I/qNygP42zyoKp3xptRVCWRFEBvo= +golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4 h1:4nGaVu0QrbjT/AK2PRLuQfQuh6DJve+pELhqTdAj3x0= +golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210510120138-977fb7262007 h1:gG67DSER+11cZvqIMb8S8bt0vZtiN6xWYARwirrOSfE= +golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.1.5 h1:ouewzE6p+/VEB31YYnTbEJdi8pFqKp4P4n85vwo3DHA= +golang.org/x/tools v0.1.5/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= diff --git a/kadai2/images/subimages/test_image1.png b/kadai2/images/subimages/test_image1.png new file mode 100644 index 0000000000000000000000000000000000000000..3701ff21d4ea8375a7c794d91911209b3fa08544 GIT binary patch literal 19996 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
LMMLN$RttDTGxLtW*(P_-}3>y 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 Ge-i+U`9@m+ literal 0 HcmV?d00001 diff --git a/kadai2/test_images/test_image2.jpeg b/kadai2/test_images/test_image2.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..78afc70e32bc850398e1680319c7e93129e720a5 GIT binary patch literal 2255 zcmbtU3s6&68a_8S4?rNGw^pTTL`83$!8V#MB`qXCFCr>=wYzPGt|GP)ccv}{ipGgI z1Yb=n1cPrSA>;v_I&F7p6mI20n+OMSvCy!Lbn83RwVv7*J?{Uk5~k z=?o?-EIeXX44^?UOrygL2Axjr)KD=%k7dk`=ch5}$nsc=3Xzp%RkdM@(?7cKn7r$k zC95{QsSA&o`}n;13lf$tLwU;u&-@|j*<@kH3s~mrtTow+7hn40pI&}NnZNn9*S8d? zwiXqayj8k=hq`?Cp1u3_zpX!LtUh%3$kAiREp=9#-BI80-rxS-`0*!a&NiL9_<8H4 z%WYq@|D)UG{^r}B-YZx8|M|nsfm?$^p5f6uV_x6gd*c%X1mGz;)N_i^eSBgmJ~TQV zrn7>4AX+H}IF`E3q#VYYCpOVzIc`Vm&Z1}*%dK&iJ(7WG)O7L z=>H?6`%R2y2+i;zuYyPzq6~v$fe0Mb^TOfNAQAcQM%!pzY5iiKnI&7F=xLv1EKS)V z8nl5GKc|^?>5Qgajfn7WmR0>cv4B3$H#l6-;;l=z*%w;$D6rbB9qLFDJk_C%WIJ5? zWDW_0xk+bk;TMf2$(Me8hWphUpW(|(R-NVucWvnRh;uc_SH_?GLv2m|Ax>M@x^~Wv zC(mC>)kdI}5MoY7x-^{|#<~xktL!j%1>x_k`BB8(`p)TWCQtiU20DMl@?KQ^` zsKszmkD8fh@;&}~hoZ2;bYxsDT`GV~jxmQk+Vp3YYCj7fyIMPK1Z>ACqaT0Zg{T2OBAieR=)5x%IU-h(#ysxc<#N341+_$WjH5!s?)AfZbwkW zV~gbFy#dVuM9Oz7_&#n%W=iKR6{Br7YvR_49^-ffI^s1a&3pN-^}0rt{p9toMkl|e zrtX8nUe}puKW=n&> zgjH!65@aWZ*1z$+vgDahHTdPwJ>q{|r^zdH`gEa26*a3W6I%g>c#q%KGZO_qe{$Uu zHQxyfG0@v6!&atK0@EnaZ;QAC5_>6kgGXW&%&`1Rv41tCby9{n977aKP>UV}!HY^n zz#INa9@KKdW-;7eCSRY3C}Lz70;W-8l1c1p4VG$fQcIDcQ|t_{&6>jQ*3Q4>mX{w7Rzok-xFD{5p}I(71<}=wGn5652b@kCB|`gj$31M0@e2B#8b$&-lv+L^ zUoe-tR^F7yru~89;gA_2h5u)!h?j;^btiH-EGND^BfV?dfMC6TrD%w&HPbD6-ocQd zK~W!q_@Q0ZL|$OC!V?u#ASe^fa3|>fh3>;fx0*Znb>d6~(Sp$jfPOorDNs#py_eej zg`xqu|62kgz|@zla&V7K_{{5+sO6~c0SQ7$4TPEmMvQ7j1+h~q5b9Cu)0X=zw;O9% zgB}v}m^h;G4BN zO|xlSp1;l2Tu+r4CEbVlO(WMh4J~(5aMO9j_B={i5qKzy6iRhx>sy8$HrdBh*#|Nm$ loC0D}RWS8ej?<;I4T}i((IrH5z;1fDN%sr-sCS&a@^1m1?JWQR literal 0 HcmV?d00001 diff --git a/kadai2/test_images/test_image3 b/kadai2/test_images/test_image3 new file mode 100644 index 0000000000000000000000000000000000000000..18309acd013a64b909ed04f0c69f94c57a98a59b GIT binary patch literal 6083 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

ItLp*xN*ESC$*#I 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

ItLp*xN*ESC$*#I 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 Hu0mjf;P+V| literal 0 HcmV?d00001 diff --git a/kadai2/test_images/test_subimages/test_image1.png b/kadai2/test_images/test_subimages/test_image1.png new file mode 100644 index 0000000000000000000000000000000000000000..37d0c71951dfd38cd4cbfd10baa79131c93fdccb GIT binary patch literal 5509 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 Hu0mjf;P+V| literal 0 HcmV?d00001 diff --git a/kadai2/test_images/test_subimages/test_image2.jpeg b/kadai2/test_images/test_subimages/test_image2.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..18309acd013a64b909ed04f0c69f94c57a98a59b GIT binary patch literal 6083 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

ItLp*xN*ESC$*#I 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

ItLp*xN*ESC$*#I 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

ItLp*xN*ESC$*#I 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

ItLp*xN*ESC$*#I zL{TbtE!}r7zo|L`HW@`*4RFK|(FO~hdRF^p<(;Xs$DDNZq~!{VF+=$;sT*DWeydil ze?wWZ{RfA9p*i!3lZy@RS(oo-M;T$(EbtM%PgI7JrBOPP4h~G&nMjy2oPg@s*VGLR zbgKHWU3-95GMe@>q-_v{NJOVIjUGJI+J?Pk0!vGs`uUR*K`hp$%@|4`R>0YRSEuia zX1~4eMFt}A_B{+)A6KLqMjYtKtW~7HAW4Qn=_Hq*0d(4>h>5-l^1l|%Pu)O{dc@@y z;~4fkN7N5cdJ>g;G~Im=2p)C^{?4c7l=USOG);#>A+IO|DKbfa@QOc(KhwoVepVSi zb^KEO}%{#KL1!W=oL(CPpEb!-S6=H z{0jy)qh#iO>y3Ok``>VEH)Oa&iBt!7-T1cixIh~oub=;hzRlS4t|b_>Uv=j5xDr38 zwVi}W-b^s_=|K3^2f}7z5np;2@-Krs Date: Fri, 10 Sep 2021 16:35:59 +0900 Subject: [PATCH 2/7] delte testimage --- kadai2/images/subimages/test_image1.png | Bin 19996 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 kadai2/images/subimages/test_image1.png diff --git a/kadai2/images/subimages/test_image1.png b/kadai2/images/subimages/test_image1.png deleted file mode 100644 index 3701ff21d4ea8375a7c794d91911209b3fa08544..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19996 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

LMMLN$RttDTGxLtW*(P_-}3>y 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 Date: Fri, 10 Sep 2021 16:37:19 +0900 Subject: [PATCH 3/7] add testimage --- kadai2/test_images/test_image1.png | Bin 0 -> 5509 bytes kadai2/test_images/test_image2.png | Bin 0 -> 6083 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 kadai2/test_images/test_image1.png create mode 100644 kadai2/test_images/test_image2.png diff --git a/kadai2/test_images/test_image1.png b/kadai2/test_images/test_image1.png new file mode 100644 index 0000000000000000000000000000000000000000..37d0c71951dfd38cd4cbfd10baa79131c93fdccb GIT binary patch literal 5509 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 Hu0mjf;P+V| literal 0 HcmV?d00001 diff --git a/kadai2/test_images/test_image2.png b/kadai2/test_images/test_image2.png new file mode 100644 index 0000000000000000000000000000000000000000..18309acd013a64b909ed04f0c69f94c57a98a59b GIT binary patch literal 6083 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

ItLp*xN*ESC$*#I zL{TbtE!}r7zo|L`HW@`*4RFK|(FO~hdRF^p<(;Xs$DDNZq~!{VF+=$;sT*DWeydil ze?wWZ{RfA9p*i!3lZy@RS(oo-M;T$(EbtM%PgI7JrBOPP4h~G&nMjy2oPg@s*VGLR zbgKHWU3-95GMe@>q-_v{NJOVIjUGJI+J?Pk0!vGs`uUR*K`hp$%@|4`R>0YRSEuia zX1~4eMFt}A_B{+)A6KLqMjYtKtW~7HAW4Qn=_Hq*0d(4>h>5-l^1l|%Pu)O{dc@@y z;~4fkN7N5cdJ>g;G~Im=2p)C^{?4c7l=USOG);#>A+IO|DKbfa@QOc(KhwoVepVSi zb^KEO}%{#KL1!W=oL(CPpEb!-S6=H z{0jy)qh#iO>y3Ok``>VEH)Oa&iBt!7-T1cixIh~oub=;hzRlS4t|b_>Uv=j5xDr38 zwVi}W-b^s_=|K3^2f}7z5np;2@-Krs Date: Fri, 10 Sep 2021 16:54:37 +0900 Subject: [PATCH 4/7] add README.md --- kadai2/README.md | 20 ++++++++++++++++++-- kadai2/test_images/test_image1.jpeg | Bin 1981 -> 1987 bytes kadai2/test_images/test_image1.png | Bin 5509 -> 0 bytes kadai2/test_images/test_image2.jpeg | Bin 2255 -> 2251 bytes kadai2/test_images/test_image2.png | Bin 6083 -> 0 bytes 5 files changed, 18 insertions(+), 2 deletions(-) delete mode 100644 kadai2/test_images/test_image1.png delete mode 100644 kadai2/test_images/test_image2.png diff --git a/kadai2/README.md b/kadai2/README.md index ad9e475c..61f2d72b 100644 --- a/kadai2/README.md +++ b/kadai2/README.md @@ -7,7 +7,11 @@ * io.Readerは、入力処理の基本インターフェース * `Read(p []byte) (n int, err error)` をもつインターフェース * バイト列を読み出すインターフェース + +【io.Reader】 * io.Writerは、出力処理の基本インターフェース +* `Write(p []byte) (n int, err error)` をもつインターフェース +* バイト列を書き出すインターフェース ### io.Readerとio.Writerがあることでどういう利点があるのか具体例を挙げて考えてみる * 様々な場面で出てくる入出力にio.Readerインターフェースに準拠しているため、汎用性に優れている。 @@ -26,9 +30,21 @@ * テストヘルパーを作ってみる #### Usage +モジュール配下に移動 `cd convert` -`go test` -#### カバレッジ +テスト実行 +`go test -run ''` + +カバー内容を吐き出す +`go test -cover ./... -coverprofile=cover.out` +go toolを用いてcover.htmlを作成する +`go tool cover -html=cover.out -o cover.html` + +cover.htmlを開く +`open cover.html` + +#### カバレッジ +current : coverage: 75.0% of statements diff --git a/kadai2/test_images/test_image1.jpeg b/kadai2/test_images/test_image1.jpeg index 44e60bda0b89c47318b3d02f1776185a69a3567d..468e49b2cc6de549edce381f9199242837c2df02 100644 GIT binary patch delta 880 zcmdnXf0%#6Zsz*91S=)VaB4_^Zjan*MEJ%VC(UNt7V7=a|J6r1 zJ3Cd)KQ;Zvr8)iem;d~mGB<-wLau2VP@Bf0E(X8HAOB7Hm0tMuU)y|-$qH7Lf9_TIpW*rvTg|fHbAqHq zWV)gz`!h+K%)IkY&jqK^`Bu*;K^_D=cZ>YUBLGCi^Y=Xul*O*H%QJ;cB|Vzars4uh_t%> zQ{@}MEdC8kZ@)fk)y0r0d;CAcy2;ATzv{oP{4zs?0hpTcBtTpV6PLIXE(s#V<^SIV E0O?>&&Hw-a delta 894 zcmX@izn6c*ZsvNw1yVt#wC4G)*&mCGx6 zG!}I+;KG{o_D9tkUw@Usrdux(=;Kstr18i9=dYlP4xDc+mQAr;dDn8OmcvgEac!GSL#TLOI?T}1+z%H{jNEWd2szy6EKFJ~@|MGZJ{ z`uc10ecsjWztoU)(N*M#NT4f&s-~rc&wE!91|g0=?w=QRX)r)BqpjWk3zuKcn;%uH zxBy8UCJ(2VmD{&}1={~lgkejdtKnn^b`f6Amp~Ez{I%8!m!!ld`!PwlH6H+mMZ)v- z_9p`Ge^`3(>!ZmM>M!iqG8|phrP+ZkjGX_ve_m?wpW*c-xhcDA&uQ{<@ww_wzQ-gs z`2!ORE2Gc5dalVISk<|{*gN|#;Q*SzHhBZ9$m9d8ECM3uc^Wyd8&;N<+wUqDw z`E`kyEHLT}@P+G=y!q4Wrfdmdc3=PVsLcGtKQGI=q8Re-J9qijZTY3aIJ5qnN&4%b zQneziZ9qEk2bh)cn=5wTp35s1uuZ&E|LdiZh5hpX3{mqv8yy&4dIO_5kb2mj62ln( G-vj`1f@l~3 diff --git a/kadai2/test_images/test_image1.png b/kadai2/test_images/test_image1.png deleted file mode 100644 index 37d0c71951dfd38cd4cbfd10baa79131c93fdccb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5509 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 Hu0mjf;P+V| diff --git a/kadai2/test_images/test_image2.jpeg b/kadai2/test_images/test_image2.jpeg index 78afc70e32bc850398e1680319c7e93129e720a5..136ae0067f86ae0ac5b36525e471616591b18ab3 100644 GIT binary patch delta 1359 zcmaKsZ%i9?7{{+Y+8fB_^2SZL`=Ul3+e!_X+sp@77->s_W!a0Cdn6fy&?LRVU^9iT?zi_e?qcfTjk z_xpW*XO5bQy6d50HwHoY>rART)MdAOS$!g0Gx=GjGOL%@0@UdTA(kmLo8ki)HH8uL zm{}rCI0ysk;&63bExRC%7rG(&fJxwXeX|c}rCeFmC(6YF7_g>KIlLdT)b5LypP9ET zNf3d#?O;V;{^6U?@*!(@F!QR{WYSD<oJ(6i z;3$+A;ds*BHva1%*mU`!rQ#qSQhQ> z`U9f4Iu;w#DyR$ZOT1+(!^v<-q<_9}!*AS`4MRyz**AT{eysu_j;(eVN*(_ev3MPXg&Mg@oF` z?AS2iCp$)*1}h_^Vo&Gs&t->6w+{{U2Wb^(CoC2K0ouA0K!!}FZkjK*J`y%W8IK)j8kHnsHY?+E=i{2%gBvX$Jh!0kK64)$UXm6lbs|93Wa zy0Aa6N)R5ipw{?+H;%EVbU+c9!#^veXGQ3f)3Q~mP_&8%1?@t6m5uU$@Ta^6=3Wn5 zQnF7NtN@f(x-W!Ldd5~sA*H?3s*0jVtK#WFyU?+yt#fQ!tvGj%tjgf?Z^jCa6zZ7YcXj*4Q1?O8w{{RpRk{yY)!*klHG9z1 zQTtN@!(8LH5`IdZb*1JZIKCZYSvz02wceuRkY$ALPlL&fzlbK7x#( gu*MDoa~V@|ov}Lw9MuI{oT`Qv>4#1(2H^YoPg}7$2mk;8 delta 1299 zcmaKre@q)?7{{-LwhW|Y+huNJtki*CHQ+jH$g0o+UO`~=$7y1ksUS;OX95zy&60YB zy0O%)6c6`{(Uz{X)JVo3m<^YuY{4O!8--TO96E?&P*4&^%it_m?>a&MF#hq)<$W&i z`##U-`+aY39@*R*rlX(t6fya_j~LL7d9OFD7FnF)mLoN(^}@ykok$_sAAn<$bm*;i zuYQHQ^sA*%3Ipk&zKeB{gOr$JUN?6%hlIGg%snM3I~FMH^eJFKc>#oFHmV!XcaKrU9}tuT%uW-A<&&XgRy0 zkv}h_S)5BwCEN0zT78m*F8$m&kFYuZRfD?pm|YH~PCnV;;#(_R!%jI320xpW#}tIb zca6U-5^u5Fxc+YhiRkr07BF)$=-Rs-HAC?Xp3!E20EgM#9CFq<8t@2^iTYx;nSyw2 zF}&}MJ5b69I-S?JV&wZyfC@M!9Pb&q$Edsj!U&p)Tsj}zL{pj_ZX1R-v| zG<)QcnlZG6wfd;tkFCT*^FeFY_IH-;6IylA?upSpk6^%j>2l4u_X<0VT2zv&v!AR% zL|sDp{pN1_1o~Pn3^E2EhQjUW`E}LoL1?7PZ z5J^(NAh0g8MIm!&v~Z5eLzbS2?&9PJyX@JVG2IqJu1D!j!&>7~F%bhqk=nrOas-$k z)z6_tK(0s2SF>`9OH9<<|05cwy4&gH$Oci-LCw~11nA&(`jFh;HN=Sy$xSLf9EadL zzL@yxU_+}EuriHJXH0e6BGsYephCjf5Z1#?zs|axpNzNZTVAYEGLP&xhTOXmgp9K zG(K<7<}|gJrm#Hdi}`t@>v*U<{eZZVJFT%c10Q>r!P~=|{j?1)Ck`QjM5fuh$Uz)xZ5 z>enJeX@^w&WrpA%xD;q*!8=0J+!(8^IAv*y7e$o-!YEDe?cNiQ3pTJC7%jSYL1Fk_2dh9voTOm3s`LRmP5#+>7++H#Cf_jWU2;?Q(3}|eolC>ngu{ZB RF?M5Bj3i1diXa-f_ZKeYI{*Lx diff --git a/kadai2/test_images/test_image2.png b/kadai2/test_images/test_image2.png deleted file mode 100644 index 18309acd013a64b909ed04f0c69f94c57a98a59b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6083 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

ItLp*xN*ESC$*#I zL{TbtE!}r7zo|L`HW@`*4RFK|(FO~hdRF^p<(;Xs$DDNZq~!{VF+=$;sT*DWeydil ze?wWZ{RfA9p*i!3lZy@RS(oo-M;T$(EbtM%PgI7JrBOPP4h~G&nMjy2oPg@s*VGLR zbgKHWU3-95GMe@>q-_v{NJOVIjUGJI+J?Pk0!vGs`uUR*K`hp$%@|4`R>0YRSEuia zX1~4eMFt}A_B{+)A6KLqMjYtKtW~7HAW4Qn=_Hq*0d(4>h>5-l^1l|%Pu)O{dc@@y z;~4fkN7N5cdJ>g;G~Im=2p)C^{?4c7l=USOG);#>A+IO|DKbfa@QOc(KhwoVepVSi zb^KEO}%{#KL1!W=oL(CPpEb!-S6=H z{0jy)qh#iO>y3Ok``>VEH)Oa&iBt!7-T1cixIh~oub=;hzRlS4t|b_>Uv=j5xDr38 zwVi}W-b^s_=|K3^2f}7z5np;2@-Krs Date: Tue, 14 Sep 2021 17:18:19 +0900 Subject: [PATCH 5/7] add README.md --- kadai3-1/README.md | 20 +++++++++++++++ kadai3-1/main.go | 54 +++++++++++++++++++++++++++++++++++++++ kadai3-1/typing/typing.go | 35 +++++++++++++++++++++++++ 3 files changed, 109 insertions(+) create mode 100644 kadai3-1/README.md create mode 100644 kadai3-1/main.go create mode 100644 kadai3-1/typing/typing.go diff --git a/kadai3-1/README.md b/kadai3-1/README.md new file mode 100644 index 00000000..13978dd4 --- /dev/null +++ b/kadai3-1/README.md @@ -0,0 +1,20 @@ +# 課題3-1 + +タイピングゲームを作ろう + +* 標準出力に英単語を出す(出すものは自由) +* 標準入力から1行受け取る +* 制限時間内に何問解けたか表示する + +ヒント +* 制限時間にはtime.After関数を用いる +(context.WithTimeoutでもよい) +* select構文を用いる +(制限時間と入力を同時に待つ) + +## Setup +* init `$ go install` +## Usage +* `go run main.go [-from from extension] [-to to extension] [-directory directory]` + + diff --git a/kadai3-1/main.go b/kadai3-1/main.go new file mode 100644 index 00000000..ae83a4f2 --- /dev/null +++ b/kadai3-1/main.go @@ -0,0 +1,54 @@ +package main + +import ( + "flag" + "fmt" + "typing/typing" + "github.com/fatih/color" + "time" +) + +// initialize flag +var ( + tim = flag.Int("time", 30, "time limit") +) + +func init() { + flag.Usage = func() { + fmt.Printf(`Usage: -time TIME LIMIT + Use: typing game (only English). + Default: time 30 seconds. + `) + flag.PrintDefaults() + } +} + +func main() { + flag.Parse() + tim := *tim + fmt.Printf("start typing game. time limit %d second\n", tim) + var score int + var judge = true + + timeout := time.After(time.Duration(tim) * time.Second) + now := time.Now() + for judge { + word := typing.RandomWord() + fmt.Printf("右の文字を入力せよ : %s \n", word) + c := typing.CreateChan(word) + select { + case res := <- c: + if word == res { + score++ + fmt.Printf("経過: %vs\n", int(time.Since(now).Seconds())%60) + } else { + color.Red("fail") + fmt.Printf("経過: %vs\n", int(time.Since(now).Seconds())%60) + } + case <- timeout: + fmt.Println("Time up") + fmt.Println("result score: ", score) + judge = false + } + } +} diff --git a/kadai3-1/typing/typing.go b/kadai3-1/typing/typing.go new file mode 100644 index 00000000..09f716da --- /dev/null +++ b/kadai3-1/typing/typing.go @@ -0,0 +1,35 @@ +package typing + +import ( + "math/rand" + "time" + "os" + "bufio" +) + +func RandomWord() string { + words := []string { + "reason", + "secret", + "gimlet", + "escape", + "galaxy", + "breeze", + "beetle", + "allure", + "velvet", + } + + rand.Seed(time.Now().UnixNano()) + + return words[rand.Intn(len(words))] +} + +func CreateChan(word string) <-chan string { + stdin := bufio.NewScanner(os.Stdin) + stdin.Scan() + text := stdin.Text() + c := make(chan string, 1) + c <- text + return c +} From f4210aa48396fbec0e1e6289d58bf50d9bd482fd Mon Sep 17 00:00:00 2001 From: takeda1411123 Date: Tue, 14 Sep 2021 17:19:03 +0900 Subject: [PATCH 6/7] add go.mod and go.sum --- kadai3-1/go.mod | 5 +++++ kadai3-1/go.sum | 9 +++++++++ 2 files changed, 14 insertions(+) create mode 100644 kadai3-1/go.mod create mode 100644 kadai3-1/go.sum diff --git a/kadai3-1/go.mod b/kadai3-1/go.mod new file mode 100644 index 00000000..35b61a03 --- /dev/null +++ b/kadai3-1/go.mod @@ -0,0 +1,5 @@ +module typing + +go 1.14 + +require github.com/fatih/color v1.12.0 // indirect diff --git a/kadai3-1/go.sum b/kadai3-1/go.sum new file mode 100644 index 00000000..5cf2f07a --- /dev/null +++ b/kadai3-1/go.sum @@ -0,0 +1,9 @@ +github.com/fatih/color v1.12.0 h1:mRhaKNwANqRgUBGKmnI5ZxEk7QXmjQeCcuYFMX2bfcc= +github.com/fatih/color v1.12.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM= +github.com/mattn/go-colorable v0.1.8 h1:c1ghPdyEDarC70ftn0y+A/Ee++9zz8ljHG1b13eJ0s8= +github.com/mattn/go-colorable v0.1.8/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= +github.com/mattn/go-isatty v0.0.12 h1:wuysRhFDzyxgEmMf5xjvJ2M9dZoWAXNNr5LSBS7uHXY= +github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= +golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae h1:/WDfKMnPU+m5M4xB+6x4kaepxRw6jWvR5iDRdvjHgy8= +golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= From 92b03c0ae98fae82369f3ecbb016ffc4dbbd763f Mon Sep 17 00:00:00 2001 From: takeda1411123 Date: Tue, 14 Sep 2021 17:26:49 +0900 Subject: [PATCH 7/7] fix README.md --- kadai3-1/README.md | 2 +- kadai3-1/typing/typing.go | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/kadai3-1/README.md b/kadai3-1/README.md index 13978dd4..ef58808a 100644 --- a/kadai3-1/README.md +++ b/kadai3-1/README.md @@ -15,6 +15,6 @@ ## Setup * init `$ go install` ## Usage -* `go run main.go [-from from extension] [-to to extension] [-directory directory]` +* `go run main.go [-time time limit ] ` diff --git a/kadai3-1/typing/typing.go b/kadai3-1/typing/typing.go index 09f716da..85c7e91b 100644 --- a/kadai3-1/typing/typing.go +++ b/kadai3-1/typing/typing.go @@ -7,6 +7,7 @@ import ( "bufio" ) +// Randomly extract word func RandomWord() string { words := []string { "reason", @@ -25,6 +26,7 @@ func RandomWord() string { return words[rand.Intn(len(words))] } +// Create Chan func CreateChan(word string) <-chan string { stdin := bufio.NewScanner(os.Stdin) stdin.Scan()