Skip to content

Commit cd8c0f1

Browse files
committed
Re-number existing exercises
1 parent ab1b984 commit cd8c0f1

File tree

71 files changed

+72
-31
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

71 files changed

+72
-31
lines changed

docker/Dockerfile.ep-3

Lines changed: 34 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,40 @@
11
FROM ghcr.io/ucl-arc/fortran-unit-testing-exercises:main
22

3-
COPY --chown=vscode episodes/3-fortran-unit-test-syntax /home/vscode/3-fortran-unit-test-syntax
3+
COPY --chown=vscode episodes/3-writing-your-first-unit-test /home/vscode/3-writing-your-first-unit-test
44

5-
WORKDIR /home/vscode/3-fortran-unit-test-syntax/solution
5+
# Test the Challenge code
66

7-
# build tests with cmake
8-
RUN cmake -B build -DCMAKE_PREFIX_PATH=/home/vscode/pfunit/build/installed && \
9-
cmake --build build
7+
WORKDIR /home/vscode/3-writing-your-first-unit-test/challenge
108

11-
# test pfunit with ctest
12-
RUN ctest --test-dir build --output-on-failure
9+
# Rebuild without pFUnit
10+
RUN cmake -B build-std && \
11+
cmake --build build-std
12+
13+
# Test without pFUnit
14+
RUN ctest --test-dir build-std --output-on-failure
1315

16+
17+
# Test the Solution code
18+
19+
# Cleanup directories
20+
RUN rm -rf build-std build-pf
21+
22+
# Copy solution code
23+
RUN cp ../solution/test_temp_conversions.f90 test/standard_fortran/ && \
24+
cp ../solution/test_temp_conversions.pf test/pfunit/
25+
26+
RUN ls test/pfunit/
27+
28+
# Rebuild without pFUnit
29+
RUN cmake -B build-std && \
30+
cmake --build build-std
31+
32+
# Rebuild with pFUnit
33+
RUN cmake -B build-pf -DCMAKE_PREFIX_PATH=/home/vscode/pfunit/build/installed && \
34+
cmake --build build-pf
35+
36+
# Test without pFUnit
37+
RUN ctest --test-dir build-std --output-on-failure
38+
39+
# Test with pFUnit
40+
RUN ctest --test-dir build-pf --output-on-failure

docker/Dockerfile.ep-4

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
11
FROM ghcr.io/ucl-arc/fortran-unit-testing-exercises:main
22

3-
COPY --chown=vscode episodes/4-debugging-a-broken-test /home/vscode/4-debugging-a-broken-test
3+
COPY --chown=vscode episodes/4-fortran-unit-test-syntax /home/vscode/4-fortran-unit-test-syntax
44

5-
WORKDIR /home/vscode/4-debugging-a-broken-test/challenge
6-
7-
# Fix intentional bug in code
8-
RUN sed -i -E 's/.*matrix\(row, col\) = temp_matrix\(row, col\)/matrix\(col, row\) = temp_matrix\(row, col\)/g' src/matrix_transforms.f90
5+
WORKDIR /home/vscode/4-fortran-unit-test-syntax/solution
96

107
# build tests with cmake
118
RUN cmake -B build -DCMAKE_PREFIX_PATH=/home/vscode/pfunit/build/installed && \
129
cmake --build build
1310

1411
# test pfunit with ctest
1512
RUN ctest --test-dir build --output-on-failure
13+

docker/Dockerfile.ep-5

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,15 @@
11
FROM ghcr.io/ucl-arc/fortran-unit-testing-exercises:main
22

3-
COPY --chown=vscode episodes/5-testing-parallel-code /home/vscode/5-testing-parallel-code
3+
COPY --chown=vscode episodes/5-debugging-a-broken-test /home/vscode/5-debugging-a-broken-test
44

5-
WORKDIR /home/vscode/5-testing-parallel-code/challenge
5+
WORKDIR /home/vscode/5-debugging-a-broken-test/challenge
66

77
# Fix intentional bug in code
8-
RUN mv ../solution/test_find_steady_state.pf ./test/ && \
9-
echo "set(test_find_steady_state_src \${test_srcs})\n\
10-
list(FILTER test_find_steady_state_src INCLUDE REGEX \".*test_find_steady_state.pf\")\n\
11-
\n\
12-
add_pfunit_ctest (pfunit_find_steady_state_tests\n\
13-
TEST_SOURCES \${test_find_steady_state_src}\n\
14-
LINK_LIBRARIES sut\n\
15-
MAX_PES 8\n\
16-
)\n\
17-
" >> test/CMakeLists.txt
8+
RUN sed -i -E 's/.*matrix\(row, col\) = temp_matrix\(row, col\)/matrix\(col, row\) = temp_matrix\(row, col\)/g' src/matrix_transforms.f90
189

1910
# build tests with cmake
20-
RUN cmake -B build-cmake -DCMAKE_PREFIX_PATH=/home/vscode/pfunit/build/installed && \
21-
cmake --build build-cmake
11+
RUN cmake -B build -DCMAKE_PREFIX_PATH=/home/vscode/pfunit/build/installed && \
12+
cmake --build build
2213

23-
# test with ctest, allowing MPI to oversubscribe
24-
RUN ctest --test-dir build-cmake --output-on-failure
14+
# test pfunit with ctest
15+
RUN ctest --test-dir build --output-on-failure

docker/Dockerfile.ep-6

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
FROM ghcr.io/ucl-arc/fortran-unit-testing-exercises:main
2+
3+
COPY --chown=vscode episodes/6-testing-parallel-code /home/vscode/6-testing-parallel-code
4+
5+
WORKDIR /home/vscode/6-testing-parallel-code/challenge
6+
7+
# Fix intentional bug in code
8+
RUN mv ../solution/test_find_steady_state.pf ./test/ && \
9+
echo "set(test_find_steady_state_src \${test_srcs})\n\
10+
list(FILTER test_find_steady_state_src INCLUDE REGEX \".*test_find_steady_state.pf\")\n\
11+
\n\
12+
add_pfunit_ctest (pfunit_find_steady_state_tests\n\
13+
TEST_SOURCES \${test_find_steady_state_src}\n\
14+
LINK_LIBRARIES sut\n\
15+
MAX_PES 8\n\
16+
)\n\
17+
" >> test/CMakeLists.txt
18+
19+
# build tests with cmake
20+
RUN cmake -B build-cmake -DCMAKE_PREFIX_PATH=/home/vscode/pfunit/build/installed && \
21+
cmake --build build-cmake
22+
23+
# test with ctest, allowing MPI to oversubscribe
24+
RUN ctest --test-dir build-cmake --output-on-failure

episodes/6-writing-your-first-unit-test/challenge/CMakeLists.txt renamed to episodes/3-writing-your-first-unit-test/challenge/CMakeLists.txt

File renamed without changes.

episodes/6-writing-your-first-unit-test/challenge/README.md renamed to episodes/3-writing-your-first-unit-test/challenge/README.md

episodes/6-writing-your-first-unit-test/challenge/src/temp_conversions.f90 renamed to episodes/3-writing-your-first-unit-test/challenge/src/temp_conversions.f90

File renamed without changes.

episodes/6-writing-your-first-unit-test/challenge/test/CMakeLists.txt renamed to episodes/3-writing-your-first-unit-test/challenge/test/CMakeLists.txt

File renamed without changes.

episodes/6-writing-your-first-unit-test/challenge/test/pfunit/.gitignore renamed to episodes/3-writing-your-first-unit-test/challenge/test/pfunit/.gitignore

File renamed without changes.

episodes/6-writing-your-first-unit-test/challenge/test/pfunit/CMakeLists.txt renamed to episodes/3-writing-your-first-unit-test/challenge/test/pfunit/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ add_library (sut STATIC ${PROJ_SRC_FILES})
77

88
# List all test files
99
file(GLOB
10-
PROJ_TEST_FILES
10+
test_srcs
1111
"${TEST_DIR}/*.pf"
1212
)
1313

0 commit comments

Comments
 (0)