Skip to content
Snippets Groups Projects
Commit f2738cc7 authored by Goik Martin's avatar Goik Martin
Browse files

Symlinks + modified Readme.md

parent 4fee108a
No related branches found
No related tags found
No related merge requests found
Showing
with 17 additions and 481 deletions
# Troubleshooting
1. **Your IntelliJ IDE hangs**
Grab a terminal window and execute:
```bash
$ killall java
```
Then restart IntelliJ.
1. **Browser accidentially closed / ILIAS Session lost**
1. Click on the message's link and unlock your session(s)
1. Login again
1. Go to top left Magazin -> (Baumansicht / tree view) -> Aktuelle Klausuren, select your exam, re-enter the access
password and resume.
# Generate and open class/method javadoc for browsing
Grab a terminal in this IDE (By lower left icon or Alt+F12) and issue the following command:
<pre>Exam> mvn javadoc:javadoc
...
[<span style="color:blue;font-weight:bold;">INFO</span>] Executing tasks
[<span style="color:orange;font-weight:bold;">WARNING</span>] [echo] Javadoc root at <span style="color:blue;">file:///home/.../Downloads/Exam/target/site/apidocs/index.html</span>
[<span style="color:blue;font-weight:bold;">INFO</span>] Executed tasks
...</pre>
Click on or copy the <span style="color:blue;">file:///.../index.html</span> link opening your project's `index.html`
Javadoc root in your web browser.
# Implementation tasks
Your project's following packages do contain implementation tasks:
- `de.hdm_stuttgart.mi.sd1.task1` (50 Points)
- `de.hdm_stuttgart.mi.sd1.task2` (20 points, more difficult)
Read the generated documentation and implement the skeleton methods and classes.
Your project's `test` branch does contain corresponding unit tests for verifying your solutions' correctness.
# Hints
- Your score solely depends on the number of successfully executing unit tests. A »nearly correct« implementation failing
with respect to a given unit tests will not contribute any points at all.
- General advice: Implement less but correctly.
- Mind special cases i.e. `null` variable values or null values being contained in arrays.
- In case of test failures both the IDEA debugger and logging statements are your friend.
Executing `de.hdm_stuttgart.mi.sd1.ShowReachedPoints` in your project's test branch as a Java application
(not as Junit test!) shows your number of points reached so far.
Do not model your implementations along unit test definitions i.e. avoid cheating this way! Such behaviour will be
regarded as an attempt at deception (Täuschungsversuch).
# Exam system upload
After finishing implementing:
1. Export this project by hitting **»File ➔ Export ➔ Project to Zip File«**.
1. Use a self-explanatory file name like e.g. `solution1.zip`.
1. Go to your exam browser window and upload `solution1.zip` .
1. Complete by **clicking the »<span style="background: #527A35;color:white;">Speichern + weiter ➞ </span>«** button.
1. Hit **<span style="background: #446684;color:white;"> 🠬 Speichern + zurück</span>** and check if your
upload is visible.
1. If you advance on implementing: Repeat steps 1. to 5.: Only the least uploaded `.zip` archive will become subject to
marking.
../../Common/Readme.md
\ No newline at end of file
../../../../Common/src/main/assembly
\ No newline at end of file
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
<id>fat-tests</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<outputDirectory/>
<useProjectArtifact>true</useProjectArtifact>
<unpack>true</unpack>
<scope>test</scope>
</dependencySet>
</dependencySets>
<fileSets>
<fileSet>
<directory>${project.build.directory}/test-classes</directory>
<outputDirectory/>
<includes>
<include>**/*.class</include>
</includes>
<useDefaultExcludes>true</useDefaultExcludes>
</fileSet>
<fileSet>
<directory>${project.build.directory}/classes</directory>
<outputDirectory/>
<includes>
<include>**/*.class</include>
</includes>
<useDefaultExcludes>true</useDefaultExcludes>
</fileSet>
</fileSets>
</assembly>
\ No newline at end of file
../../../../../Common/src/main/javadoc/resources
\ No newline at end of file
/* shame on you, javadoc! Still providing
@import url('resources/fonts/dejavu.css') line in stylesheet.css
*/
\ No newline at end of file
/* Javadoc extensions: */
ul > li > ul {
list-style-type: circle;
}
table.goikTableDefaults,
table.goikTableDefaults>caption,
table.goikTableDefaults>tr>th,
table.goikTableDefaults>tr>td,
table.goikTableDefaults>tbody>tr>th,
table.goikTableDefaults>tbody>tr>td {
border: 2px solid black;
border-collapse: collapse;
padding: 1ex;
vertical-align: top;
}
table.goikTableDefaults>caption {
/* border-top-style: solid; border-left-style: solid; border-right-style: solid' */
border-bottom-style: none;
font-weight: bold;
background:#dee3e9;
text-align:left;
padding:8px 3px 3px 7px;
}
table.goikTableDefaults>tbody>tr>td {
vertical-align:top;
}
table.goikTableDefaults {
border-spacing: 0px !important;
}
table.indexTable {
border-collapse: collapse;
border-style: hidden;
}
table.indexTable caption {
text-align: left;
}
table.indexTable td, table.indexTable th {
border: 1px solid black;
padding: 0.5ex;
}
em {
font-weight: bold;
font-style: normal;
}
section.implementationHints>h3 {
font-weight: bold;
background-color: rgb(222, 227, 233);
}
code {
white-space: pre;
}
.implementationHints {
background-color: hsl(120, 100%, 95%) !important;
}
.myRed {
color: red;
}
.myGreen {
color: limegreen;
}
for(var i in document.links) {
var link = document.links[i];
if (link.href && link.href.indexOf('http') === 0) {
link.target = '_blank';
}
}
../../../../Common/src/main/resources
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<Appenders>
<File name="A1" fileName="A1.log" append="false">
<PatternLayout pattern="%t %-5p %c{2} - %m%n"/>
</File>
<Console name="STDOUT" target="SYSTEM_OUT">
<PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>
</Console>
</Appenders>
<Loggers>
<!-- You my want to define class or package level per-logger rules -->
<Logger name="de.hdm_stuttgart.mi.sd1.App" level="debug">
<AppenderRef ref="A1"/>
</Logger>
<Root level="info">
<AppenderRef ref="STDOUT"/>
</Root>
</Loggers>
</Configuration>
\ No newline at end of file
# Troubleshooting
1. **Your IntelliJ IDE hangs**
Grab a terminal window and execute:
```bash
$ killall java
```
Then restart IntelliJ.
1. **Browser accidentially closed / ILIAS Session lost**
1. Click on the message's link and unlock your session(s)
1. Login again
1. Go to top left Magazin -> (Baumansicht / tree view) -> Aktuelle Klausuren, select your exam, re-enter the access
password and resume.
# Generate and open class/method javadoc for browsing
Grab a terminal in this IDE (By lower left icon or Alt+F12) and issue the following command:
<pre>Exam> mvn javadoc:javadoc
...
[<span style="color:blue;font-weight:bold;">INFO</span>] Executing tasks
[<span style="color:orange;font-weight:bold;">WARNING</span>] [echo] Javadoc root at <span style="color:blue;">file:///home/.../Downloads/Exam/target/site/apidocs/index.html</span>
[<span style="color:blue;font-weight:bold;">INFO</span>] Executed tasks
...</pre>
Click on or copy the <span style="color:blue;">file:///.../index.html</span> link opening your project's `index.html`
Javadoc root in your web browser.
# Implementation tasks
Your project's following packages do contain implementation tasks:
- `de.hdm_stuttgart.mi.sd1.task1` (50 Points)
- `de.hdm_stuttgart.mi.sd1.task2` (20 points, more difficult)
Read the generated documentation and implement the skeleton methods and classes.
Your project's `test` branch does contain corresponding unit tests for verifying your solutions' correctness.
# Hints
- Your score solely depends on the number of successfully executing unit tests. A »nearly correct« implementation failing
with respect to a given unit tests will not contribute any points at all.
- General advice: Implement less but correctly.
- Mind special cases i.e. `null` variable values or null values being contained in arrays.
- In case of test failures both the IDEA debugger and logging statements are your friend.
Executing `de.hdm_stuttgart.mi.sd1.ShowReachedPoints` in your project's test branch as a Java application
(not as Junit test!) shows your number of points reached so far.
Do not model your implementations along unit test definitions i.e. avoid cheating this way! Such behaviour will be
regarded as an attempt at deception (Täuschungsversuch).
# Exam system upload
After finishing implementing:
1. Export this project by hitting **»File ➔ Export ➔ Project to Zip File«**.
1. Use a self-explanatory file name like e.g. `solution1.zip`.
1. Go to your exam browser window and upload `solution1.zip` .
1. Complete by **clicking the »<span style="background: #527A35;color:white;">Speichern + weiter ➞ </span>«** button.
1. Hit **<span style="background: #446684;color:white;"> 🠬 Speichern + zurück</span>** and check if your
upload is visible.
1. If you advance on implementing: Repeat steps 1. to 5.: Only the least uploaded `.zip` archive will become subject to
marking.
......@@ -4,20 +4,20 @@
Grab a terminal window and execute:
```bash
$ killall java
$ killall idea
```
Then restart IntelliJ.
1. **Browser accidentially closed / ILIAS Session lost**
1. Click on the message's link and unlock your session(s)
1. Login again
1. Go to top left Magazin -> (Baumansicht / tree view) -> Aktuelle Klausuren, select your exam, re-enter the access
password and resume.
1. Click on the message's link and unlock your session(s)
1. Login again
1. Go to top left Magazin -> (Baumansicht / tree view) -> Aktuelle Klausuren, select your exam, re-enter the access
password and resume.
# Generate and open class/method javadoc for browsing
Grab a terminal in this IDE (By lower left icon or Alt+F12) and issue the following command:
Grab a terminal in your IDE (By lower left icon or Alt+F12) and issue the following command:
<pre>Exam> mvn javadoc:javadoc
...
......@@ -44,7 +44,7 @@ Your project's `test` branch does contain corresponding unit tests for verifyin
# Hints
- Your score solely depends on the number of successfully executing unit tests. A »nearly correct« implementation failing
with respect to a given unit tests will not contribute any points at all.
with respect to a given unit tests will not contribute any points at all.
- General advice: Implement less but correctly.
......@@ -69,4 +69,4 @@ After finishing implementing:
1. Hit **<span style="background: #446684;color:white;"> 🠬 Speichern + zurück</span>** and check if your
upload is visible.
1. If you advance on implementing: Repeat steps 1. to 5.: Only the least uploaded `.zip` archive will become subject to
marking.
marking.
../../Common/Readme.md
\ No newline at end of file
../../../../Common/src/main/assembly
\ No newline at end of file
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
<id>fat-tests</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<outputDirectory/>
<useProjectArtifact>true</useProjectArtifact>
<unpack>true</unpack>
<scope>test</scope>
</dependencySet>
</dependencySets>
<fileSets>
<fileSet>
<directory>${project.build.directory}/test-classes</directory>
<outputDirectory/>
<includes>
<include>**/*.class</include>
</includes>
<useDefaultExcludes>true</useDefaultExcludes>
</fileSet>
<fileSet>
<directory>${project.build.directory}/classes</directory>
<outputDirectory/>
<includes>
<include>**/*.class</include>
</includes>
<useDefaultExcludes>true</useDefaultExcludes>
</fileSet>
</fileSets>
</assembly>
\ No newline at end of file
../../../../../Common/src/main/javadoc/resources
\ No newline at end of file
/* shame on you, javadoc! Still providing
@import url('resources/fonts/dejavu.css') line in stylesheet.css
*/
\ No newline at end of file
/* Javadoc extensions: */
ul > li > ul {
list-style-type: circle;
}
table.goikTableDefaults,
table.goikTableDefaults>caption,
table.goikTableDefaults>tr>th,
table.goikTableDefaults>tr>td,
table.goikTableDefaults>tbody>tr>th,
table.goikTableDefaults>tbody>tr>td {
border: 2px solid black;
border-collapse: collapse;
padding: 1ex;
vertical-align: top;
}
table.goikTableDefaults>caption {
/* border-top-style: solid; border-left-style: solid; border-right-style: solid' */
border-bottom-style: none;
font-weight: bold;
background:#dee3e9;
text-align:left;
padding:8px 3px 3px 7px;
}
table.goikTableDefaults>tbody>tr>td {
vertical-align:top;
}
table.goikTableDefaults {
border-spacing: 0px !important;
}
table.indexTable {
border-collapse: collapse;
border-style: hidden;
}
table.indexTable caption {
text-align: left;
}
table.indexTable td, table.indexTable th {
border: 1px solid black;
padding: 0.5ex;
}
em {
font-weight: bold;
font-style: normal;
}
section.implementationHints>h3 {
font-weight: bold;
background-color: rgb(222, 227, 233);
}
code {
white-space: pre;
}
.implementationHints {
background-color: hsl(120, 100%, 95%) !important;
}
.myRed {
color: red;
}
.myGreen {
color: limegreen;
}
for(var i in document.links) {
var link = document.links[i];
if (link.href && link.href.indexOf('http') === 0) {
link.target = '_blank';
}
}
../../../../Common/src/main/resources/
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment