diff options
Diffstat (limited to 'parse_test.go')
-rw-r--r-- | parse_test.go | 42 |
1 files changed, 37 insertions, 5 deletions
diff --git a/parse_test.go b/parse_test.go index e8e0693..280e8a4 100644 --- a/parse_test.go +++ b/parse_test.go @@ -7,11 +7,11 @@ import ( "testing" ) -func TestParse(t *testing.T) { - filename := "2025-02-19-isle-of-dogs.html" +func TestParseBasic(t *testing.T) { + filename := "2025-02-19-basic.html" data, err := os.ReadFile(filepath.Join("testdata", filename)) if err != nil { - t.Errorf("Could not read %v", filename) + t.Fatalf("Could not read %v", filename) } want := []flat{ flat{ @@ -19,12 +19,44 @@ func TestParse(t *testing.T) { Price: "£2,500", }, flat{ + ID: 157948184, + Price: "£2,400", + }, + flat{ ID: 158462822, Price: "£3,000", + }} + got, err := parse(data) + if err != nil { + t.Fatal(err) + } + if !reflect.DeepEqual(got, want) { + t.Errorf("Parse failed: got: %v, want: %v", got, want) + } +} + +func TestParseDulicates(t *testing.T) { + filename := "2025-03-17-duplicates.html" + data, err := os.ReadFile(filepath.Join("testdata", filename)) + if err != nil { + t.Fatalf("Could not read %v", filename) + } + want := []flat{ + flat{ + ID: 158595710, + Price: "£2,000", }, flat{ - ID: 157948184, - Price: "£2,400", + ID: 158825903, + Price: "£2,500", + }, + flat{ + ID: 159476474, + Price: "£3,000", + }, + flat{ + ID: 159479504, + Price: "£890", }} got, err := parse(data) if err != nil { |