diff options
Diffstat (limited to 'kata_test.go')
| -rw-r--r-- | kata_test.go | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/kata_test.go b/kata_test.go new file mode 100644 index 0000000..83e9177 --- /dev/null +++ b/kata_test.go @@ -0,0 +1,58 @@ +// Copyright 2020, Shulhan <m.shulhan@gmail.com>. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package kbbi + +import ( + "io/ioutil" + "testing" + + "github.com/shuLhan/share/lib/test" +) + +func TestKata_parseHTMLEntri(t *testing.T) { + cases := []struct { + infile string + exp *Kata + }{{ + infile: "testdata/entri.html", + exp: &Kata{ + Definisi: []*DefinisiKata{{ + Isi: "penerangan", + Kelas: []string{"Nomina: kata benda"}, + }, { + Isi: "pemberitahuan; kabar atau berita tentang sesuatu", + Kelas: []string{"Nomina: kata benda"}, + }, { + Isi: "keseluruhan makna yang menunjang amanat yang " + + "terlihat dalam bagian-bagian " + + "amanat itu", + Kelas: []string{ + "Nomina: kata benda", + "Linguistik: -", + }, + }}, + }, + }} + + for _, c := range cases { + htmlBody, err := ioutil.ReadFile("testdata/entri.html") + if err != nil { + t.Fatal(err) + } + + got := new(Kata) + + err = got.parseHTMLEntri(htmlBody) + if err != nil { + t.Fatal(err) + } + + for x, def := range c.exp.Definisi { + test.Assert(t, "Definisi", def, got.Definisi[x], true) + } + + test.Assert(t, c.infile, c.exp, got, true) + } +} |
