Skip to content

Commit a625880

Browse files
authored
fix: failing creature endpoints (#412)
* fix: TibiaCreaturesOverview issues * fix: TibiaCreaturesCreature issues
1 parent c91f196 commit a625880

12 files changed

+5104
-4299
lines changed

src/TibiaCreaturesCreature.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ type CreatureResponse struct {
4242
}
4343

4444
var (
45-
CreatureDataRegex = regexp.MustCompile(`.*;">(.*)<\/h2> <img src="(.*)"\/>.*<p>(.*)<\/p> <p>(.*)<\/p> <p>(.*)<\/p>.*`)
45+
CreatureDataRegex = regexp.MustCompile(`.*;">(.*)<\/h2> <img src="(.*)"\/>.*<p>(.*)<\/p> <p>(.*)<\/p> <p>(.*)<\/p>.*`)
4646
CreatureHitpointsRegex = regexp.MustCompile(`.*have (.*) hitpoints. (.*)`)
4747
CreatureImmuneRegex = regexp.MustCompile(`.*are immune to (.*)`)
4848
CreatureStrongRegex = regexp.MustCompile(`.*are strong against (.*)`)

src/TibiaCreaturesCreature_test.go

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ func TestDemon(t *testing.T) {
6666
assert.False(demonJson.Creature.Featured)
6767
}
6868

69-
func TestQuaraPredatorFeatured(t *testing.T) {
69+
func TestQuaraPredator(t *testing.T) {
7070
file, err := static.TestFiles.Open("testdata/creatures/creature/quara predator.html")
7171
if err != nil {
7272
t.Fatalf("file opening error: %s", err)
@@ -108,14 +108,14 @@ func TestQuaraPredatorFeatured(t *testing.T) {
108108
assert.False(quaraPredatorJson.Creature.BeConvinced)
109109
assert.Equal(0, quaraPredatorJson.Creature.ConvincedMana)
110110
assert.True(quaraPredatorJson.Creature.SeeInvisible)
111-
assert.Equal(1600, quaraPredatorJson.Creature.ExperiencePoints)
111+
assert.Equal(1850, quaraPredatorJson.Creature.ExperiencePoints)
112112
assert.True(quaraPredatorJson.Creature.IsLootable)
113113

114114
assert.Equal(2, len(quaraPredatorJson.Creature.LootList))
115115
assert.Equal("gold coins", quaraPredatorJson.Creature.LootList[0])
116116
assert.Equal("quara bones", quaraPredatorJson.Creature.LootList[1])
117117

118-
assert.True(quaraPredatorJson.Creature.Featured)
118+
assert.False(quaraPredatorJson.Creature.Featured)
119119
}
120120

121121
func TestCentipede(t *testing.T) {
@@ -211,3 +211,24 @@ func TestLavaLurkers(t *testing.T) {
211211
assert.Equal(1, len(lavalurkersJson.Creature.HealedBy))
212212
assert.Equal("fire", lavalurkersJson.Creature.HealedBy[0])
213213
}
214+
215+
func TestFeralWerecrocodilesFeatured(t *testing.T) {
216+
file, err := static.TestFiles.Open("testdata/creatures/creature/feral werecrocodile.html")
217+
if err != nil {
218+
t.Fatalf("file opening error: %s", err)
219+
}
220+
defer file.Close()
221+
222+
data, err := io.ReadAll(file)
223+
if err != nil {
224+
t.Fatalf("File reading error: %s", err)
225+
}
226+
227+
feralwerecrocodileJson, _ := TibiaCreaturesCreatureImpl("Feral Werecrocodiles", string(data), "")
228+
assert := assert.New(t)
229+
230+
assert.Equal("Feral Werecrocodiles", feralwerecrocodileJson.Creature.Name)
231+
assert.Equal("Feral Werecrocodiles", feralwerecrocodileJson.Creature.Race)
232+
233+
assert.False(feralwerecrocodileJson.Creature.Featured)
234+
}

src/TibiaCreaturesOverview.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ func TibiaCreaturesOverviewImpl(BoxContentHTML string, url string) (CreaturesOve
7676
)
7777

7878
// Running query over each div
79-
ReaderHTML.Find(".BoxContent div div").EachWithBreak(func(index int, s *goquery.Selection) bool {
79+
ReaderHTML.Find(".Creatures div").EachWithBreak(func(index int, s *goquery.Selection) bool {
8080
// Storing HTML into CreatureDivHTML
8181
CreatureDivHTML, err := s.Html()
8282
if err != nil {

src/TibiaCreaturesOverview_test.go

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ func TestOverview(t *testing.T) {
2929
information := creaturesJson.Information
3030

3131
assert.Equal("https://www.tibia.com/library/?subtopic=creatures", information.TibiaURLs[0])
32-
assert.Equal("Minotaur Amazon", creaturesJson.Creatures.Boosted.Name)
33-
assert.Equal("minotauramazon", creaturesJson.Creatures.Boosted.Race)
34-
assert.Equal("https://static.tibia.com/images/global/header/monsters/minotauramazon.gif", creaturesJson.Creatures.Boosted.ImageURL)
32+
assert.Equal("Feral Werecrocodile", creaturesJson.Creatures.Boosted.Name)
33+
assert.Equal("feralwerecrocodile", creaturesJson.Creatures.Boosted.Race)
34+
assert.Equal("https://static.tibia.com/images/global/header/monsters/feralwerecrocodile.gif", creaturesJson.Creatures.Boosted.ImageURL)
3535

3636
assert.Equal(638, len(creaturesJson.Creatures.Creatures))
3737

@@ -41,11 +41,17 @@ func TestOverview(t *testing.T) {
4141
assert.Equal("https://static.tibia.com/images/library/acidblob.gif", acidblob.ImageURL)
4242
assert.False(acidblob.Featured)
4343

44+
feralwerecrocodile := creaturesJson.Creatures.Creatures[204]
45+
assert.Equal("Feral Werecrocodiles", feralwerecrocodile.Name)
46+
assert.Equal("feralwerecrocodile", feralwerecrocodile.Race)
47+
assert.Equal("https://static.tibia.com/images/library/feralwerecrocodile.gif", feralwerecrocodile.ImageURL)
48+
assert.True(feralwerecrocodile.Featured)
49+
4450
minotauramazon := creaturesJson.Creatures.Creatures[360]
4551
assert.Equal("Minotaur Amazons", minotauramazon.Name)
4652
assert.Equal("minotauramazon", minotauramazon.Race)
4753
assert.Equal("https://static.tibia.com/images/library/minotauramazon.gif", minotauramazon.ImageURL)
48-
assert.True(minotauramazon.Featured)
54+
assert.False(minotauramazon.Featured)
4955

5056
quarapredator := creaturesJson.Creatures.Creatures[465]
5157
assert.Equal("Quara Predators", quarapredator.Name)

src/static/testdata/creatures/creature/centipede.html

Lines changed: 587 additions & 599 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)