Skip to content

Commit 5d361e8

Browse files
committed
add tests on reqmodel
1 parent e5d8882 commit 5d361e8

File tree

5 files changed

+56
-28
lines changed

5 files changed

+56
-28
lines changed

internal/api/docs/openapi.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1204,6 +1204,8 @@ components:
12041204
type: string
12051205
name:
12061206
type: string
1207+
require_model:
1208+
type: boolean
12071209
required:
12081210
- id
12091211
- name
@@ -1332,6 +1334,8 @@ components:
13321334
type: string
13331335
readme:
13341336
type: string
1337+
require_model:
1338+
type: boolean
13351339
status:
13361340
type: string
13371341
used_by_apps:
@@ -1365,6 +1369,8 @@ components:
13651369
type: string
13661370
name:
13671371
type: string
1372+
require_model:
1373+
type: boolean
13681374
status:
13691375
type: string
13701376
variables:
@@ -1386,6 +1392,8 @@ components:
13861392
type: string
13871393
name:
13881394
type: string
1395+
require_model:
1396+
type: boolean
13891397
status:
13901398
type: string
13911399
type: object

internal/e2e/client/client.gen.go

Lines changed: 14 additions & 9 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)