Skip to content

Commit 8c18ef5

Browse files
committed
restored LoadSketch tests
1 parent 2a6a03e commit 8c18ef5

File tree

13 files changed

+68
-178
lines changed

13 files changed

+68
-178
lines changed

Diff for: arduino/builder/sketch_test.go

+37
Original file line numberDiff line numberDiff line change
@@ -46,3 +46,40 @@ func TestSaveSketch(t *testing.T) {
4646

4747
assert.Equal(t, source, out)
4848
}
49+
50+
func TestLoadSketchFolder(t *testing.T) {
51+
// pass the path to the sketch folder
52+
sketchPath := filepath.Join("testdata", t.Name())
53+
mainFilePath := filepath.Join(sketchPath, t.Name()+".ino")
54+
s, err := builder.LoadSketch(sketchPath, "")
55+
assert.Nil(t, err)
56+
assert.NotNil(t, s)
57+
assert.Equal(t, mainFilePath, s.MainFile.Path)
58+
assert.Len(t, s.OtherSketchFiles, 2) // [old.pde, other.ino]
59+
assert.Len(t, s.AdditionalFiles, 3) // [header.h, s_file.S, src/helper.h]
60+
61+
// pass the path to the main file
62+
sketchPath = mainFilePath
63+
s, err = builder.LoadSketch(sketchPath, "")
64+
assert.Nil(t, err)
65+
assert.NotNil(t, s)
66+
assert.Equal(t, mainFilePath, s.MainFile.Path)
67+
assert.Len(t, s.OtherSketchFiles, 2)
68+
assert.Equal(t, "old.pde", filepath.Base(s.OtherSketchFiles[0].Path))
69+
assert.Equal(t, "other.ino", filepath.Base(s.OtherSketchFiles[1].Path))
70+
assert.Len(t, s.AdditionalFiles, 3)
71+
assert.Equal(t, "header.h", filepath.Base(s.AdditionalFiles[0].Path))
72+
assert.Equal(t, "s_file.S", filepath.Base(s.AdditionalFiles[1].Path))
73+
assert.Equal(t, "helper.h", filepath.Base(s.AdditionalFiles[2].Path))
74+
}
75+
76+
func TestLoadSketchFolderWrongMain(t *testing.T) {
77+
sketchPath := filepath.Join("testdata", t.Name())
78+
_, err := builder.LoadSketch(sketchPath, "")
79+
assert.Error(t, err)
80+
assert.Contains(t, err.Error(), "unable to find the main sketch file")
81+
82+
_, err = builder.LoadSketch("does/not/exist", "")
83+
assert.Error(t, err)
84+
assert.Contains(t, err.Error(), "no such file or directory")
85+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
void setup()
2+
void loop) }
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
void setup() {
2+
3+
}
4+
5+
void loop() {
6+
7+
}

Diff for: arduino/builder/testdata/TestLoadSketchFolder/doc.txt

Whitespace-only changes.
+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
#define TRUE FALSE
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#include <Arduino.h>
2+
#line 1 {{QuoteCppString .sketch.MainFile.Name}}
3+
#line 1 {{QuoteCppString .sketch.MainFile.Name}}
4+
void setup() {
5+
6+
}
7+
8+
void loop() {
9+
10+
}
11+
#line 1 {{QuoteCppString (index .sketch.OtherSketchFiles 0).Name}}
12+
13+
#line 1 {{QuoteCppString (index .sketch.OtherSketchFiles 1).Name}}
14+
String hello() {
15+
return "world";
16+
}

Diff for: arduino/builder/testdata/TestLoadSketchFolder/old.pde

Whitespace-only changes.
+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
String hello() {
2+
return "world";
3+
}

Diff for: arduino/builder/testdata/TestLoadSketchFolder/s_file.S

Whitespace-only changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
#include <testlib4.h>
2+
#error "Whattya looking at?"

Diff for: arduino/builder/testdata/TestLoadSketchFolder/src/helper.h

Whitespace-only changes.

Diff for: arduino/builder/testdata/TestLoadSketchFolderWrongMain/main.ino

Whitespace-only changes.

Diff for: legacy/builder/test/sketch_loader_test.go

-178
This file was deleted.

0 commit comments

Comments
 (0)