Skip to content

Commit fceed39

Browse files
committed
add tests on reqmodel
1 parent d8d8cf1 commit fceed39

File tree

5 files changed

+56
-29
lines changed

5 files changed

+56
-29
lines changed

internal/api/docs/openapi.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1195,6 +1195,8 @@ components:
11951195
type: string
11961196
name:
11971197
type: string
1198+
require_model:
1199+
type: boolean
11981200
required:
11991201
- id
12001202
- name
@@ -1318,6 +1320,8 @@ components:
13181320
type: string
13191321
readme:
13201322
type: string
1323+
require_model:
1324+
type: boolean
13211325
status:
13221326
type: string
13231327
used_by_apps:
@@ -1346,6 +1350,8 @@ components:
13461350
type: string
13471351
name:
13481352
type: string
1353+
require_model:
1354+
type: boolean
13491355
status:
13501356
type: string
13511357
variables:
@@ -1372,6 +1378,8 @@ components:
13721378
type: array
13731379
name:
13741380
type: string
1381+
require_model:
1382+
type: boolean
13751383
status:
13761384
type: string
13771385
type: object

internal/e2e/client/client.gen.go

Lines changed: 14 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/e2e/daemon/app_test.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -783,9 +783,10 @@ func TestAppDetails(t *testing.T) {
783783
require.Len(t, *detailsResp.JSON200.Bricks, 1)
784784
require.Equal(t,
785785
client.AppDetailedBrick{
786-
Id: ImageClassifactionBrickID,
787-
Name: "Image Classification",
788-
Category: f.Ptr("video"),
786+
Id: ImageClassifactionBrickID,
787+
Name: "Image Classification",
788+
Category: f.Ptr("video"),
789+
RequireModel: f.Ptr(true),
789790
},
790791
(*detailsResp.JSON200.Bricks)[0],
791792
)

internal/e2e/daemon/brick_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ func TestBricksList(t *testing.T) {
8383
require.Equal(t, bIdx.Description, *brick.Description)
8484
require.Equal(t, "Arduino", *brick.Author)
8585
require.Equal(t, "installed", *brick.Status)
86+
require.Equal(t, bIdx.ModelRequired, *brick.RequireModel)
8687
}
8788
}
8889

internal/orchestrator/bricksindex/bricks_index_test.go

Lines changed: 29 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -156,31 +156,44 @@ func TestBricksIndex(t *testing.T) {
156156
- name: EI_V_ANOMALY_DETECTION_MODEL
157157
default_value: /models/ootb/ei/concrete-crack-anomaly-detection.eim
158158
description: path to the model file
159+
- id: arduino:fake_no_model
160+
name: Camera Scanner
161+
description: Scans a camera for barcodes and QR codes
162+
require_container: false
163+
ports: []
159164
`
160165

161166
var index BricksIndex
162167
err := yaml.Unmarshal([]byte(x), &index)
163168
require.NoError(t, err)
164-
require.Len(t, index.Bricks, 11)
169+
require.Len(t, index.Bricks, 12)
165170

166171
// Check if ports are correctly set
167-
b, found := index.FindBrickByID("arduino:web_ui")
172+
b_ic, found := index.FindBrickByID("arduino:web_ui")
168173
require.True(t, found)
169-
require.Equal(t, []string{"7000"}, b.Ports)
174+
require.Equal(t, []string{"7000"}, b_ic.Ports)
170175

171176
// Check if variables are correctly set
172-
b, found = index.FindBrickByID("arduino:image_classification")
177+
b_ic, found = index.FindBrickByID("arduino:image_classification")
178+
require.True(t, found)
179+
require.Equal(t, "Image Classification", b_ic.Name)
180+
require.Equal(t, "mobilenet-image-classification", b_ic.ModelName)
181+
require.True(t, b_ic.ModelRequired)
182+
require.Len(t, b_ic.Variables, 2)
183+
require.Equal(t, "CUSTOM_MODEL_PATH", b_ic.Variables[0].Name)
184+
require.Equal(t, "/opt/models/ei/", b_ic.Variables[0].DefaultValue)
185+
require.Equal(t, "path to the custom model directory", b_ic.Variables[0].Description)
186+
require.Equal(t, "EI_CLASSIFICATION_MODEL", b_ic.Variables[1].Name)
187+
require.Equal(t, "/models/ootb/ei/mobilenet-v2-224px.eim", b_ic.Variables[1].DefaultValue)
188+
require.Equal(t, "path to the model file", b_ic.Variables[1].Description)
189+
require.False(t, b_ic.Variables[0].IsRequired())
190+
require.False(t, b_ic.Variables[1].IsRequired())
191+
192+
b_db, found := index.FindBrickByID("arduino:dbstorage_tsstore")
193+
require.True(t, found)
194+
require.False(t, b_db.ModelRequired)
195+
196+
b_fake, found := index.FindBrickByID("arduino:fake_no_model")
173197
require.True(t, found)
174-
require.Equal(t, "Image Classification", b.Name)
175-
require.Equal(t, "mobilenet-image-classification", b.ModelName)
176-
require.True(t, b.ModelRequired)
177-
require.Len(t, b.Variables, 2)
178-
require.Equal(t, "CUSTOM_MODEL_PATH", b.Variables[0].Name)
179-
require.Equal(t, "/opt/models/ei/", b.Variables[0].DefaultValue)
180-
require.Equal(t, "path to the custom model directory", b.Variables[0].Description)
181-
require.Equal(t, "EI_CLASSIFICATION_MODEL", b.Variables[1].Name)
182-
require.Equal(t, "/models/ootb/ei/mobilenet-v2-224px.eim", b.Variables[1].DefaultValue)
183-
require.Equal(t, "path to the model file", b.Variables[1].Description)
184-
require.False(t, b.Variables[0].IsRequired())
185-
require.False(t, b.Variables[1].IsRequired())
198+
require.False(t, b_fake.ModelRequired)
186199
}

0 commit comments

Comments
 (0)