Browse Source

Daniel

remotes/origin/homan
fdai7745 11 months ago
parent
commit
0ef3ba62cb
  1. 2
      build-project.sh
  2. 1
      build/test/cache/defines_dependency.yml
  3. 8
      build/test/cache/input.yml
  4. 0
      build/test/cache/test_duellist_spielesammlung_projekt.c
  5. 6
      build/test/dependencies/cmock.d
  6. 0
      build/test/dependencies/force_build
  7. 2
      build/test/dependencies/test_duellist_spielesammlung_projekt.d
  8. 4
      build/test/dependencies/test_duellist_spielesammlung_projekt_runner.d
  9. 4
      build/test/dependencies/unity.d
  10. BIN
      build/test/out/c/cmock.o
  11. BIN
      build/test/out/c/test_duellist_spielesammlung_projekt.o
  12. BIN
      build/test/out/c/test_duellist_spielesammlung_projekt_runner.o
  13. BIN
      build/test/out/c/unity.o
  14. BIN
      build/test/out/test_duellist_spielesammlung_projekt.out
  15. 0
      build/test/preprocess/files/test_duellist_spielesammlung_projekt.c
  16. 1
      build/test/preprocess/includes/test_duellist_spielesammlung_projekt.c
  17. 14
      build/test/results/test_duellist_spielesammlung_projekt.pass
  18. 57
      build/test/runners/test_duellist_spielesammlung_projekt_runner.c
  19. 76
      src/main/duellist-spielesammlung-projekt.c

2
build-project.sh

@ -1,4 +1,2 @@
#!/bin/bash #!/bin/bash
./duellist-spielesammlung-projekt.exe
cd duellist-spielesammlung-projekt
ceedling test:all ceedling test:all

1
build/test/cache/defines_dependency.yml

@ -0,0 +1 @@
--- {}

8
build/test/cache/input.yml

@ -23,12 +23,12 @@
:artifacts: [] :artifacts: []
:paths: :paths:
:test: :test:
- "+:test/**"
- "-:test/support"
- "+:src/test/**"
- "-:src/test/support"
:source: :source:
- src/**
- src/main/**
:support: :support:
- test/support
- src/test/support
:include: [] :include: []
:libraries: [] :libraries: []
:test_toolchain_include: [] :test_toolchain_include: []

0
build/test/cache/test_duellist_spielesammlung_projekt.c

6
build/test/dependencies/cmock.d

@ -0,0 +1,6 @@
build/test/out/c/cmock.o: \
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/ceedling-0.31.1/vendor/cmock/src/cmock.c \
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/ceedling-0.31.1/vendor/cmock/src/cmock.h \
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/ceedling-0.31.1/vendor/cmock/src/cmock_internals.h \
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/ceedling-0.31.1/vendor/unity/src/unity.h \
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/ceedling-0.31.1/vendor/unity/src/unity_internals.h

0
build/test/dependencies/force_build

2
build/test/dependencies/test_duellist_spielesammlung_projekt.d

@ -0,0 +1,2 @@
build/test/out/c/test_duellist_spielesammlung_projekt.o: \
src/test/test_duellist_spielesammlung_projekt.c

4
build/test/dependencies/test_duellist_spielesammlung_projekt_runner.d

@ -0,0 +1,4 @@
build/test/out/c/test_duellist_spielesammlung_projekt_runner.o: \
build/test/runners/test_duellist_spielesammlung_projekt_runner.c \
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/ceedling-0.31.1/vendor/unity/src/unity.h \
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/ceedling-0.31.1/vendor/unity/src/unity_internals.h

4
build/test/dependencies/unity.d

@ -0,0 +1,4 @@
build/test/out/c/unity.o: \
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/ceedling-0.31.1/vendor/unity/src/unity.c \
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/ceedling-0.31.1/vendor/unity/src/unity.h \
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/ceedling-0.31.1/vendor/unity/src/unity_internals.h

BIN
build/test/out/c/cmock.o

BIN
build/test/out/c/test_duellist_spielesammlung_projekt.o

BIN
build/test/out/c/test_duellist_spielesammlung_projekt_runner.o

BIN
build/test/out/c/unity.o

BIN
build/test/out/test_duellist_spielesammlung_projekt.out

0
build/test/preprocess/files/test_duellist_spielesammlung_projekt.c

1
build/test/preprocess/includes/test_duellist_spielesammlung_projekt.c

@ -0,0 +1 @@
--- []

14
build/test/results/test_duellist_spielesammlung_projekt.pass

@ -0,0 +1,14 @@
---
:source:
:path: src/test
:file: test_duellist_spielesammlung_projekt.c
:successes: []
:failures: []
:ignores: []
:counts:
:total: 0
:passed: 0
:failed: 0
:ignored: 0
:stdout: []
:time: 0.014711899915710092

57
build/test/runners/test_duellist_spielesammlung_projekt_runner.c

@ -0,0 +1,57 @@
/* AUTOGENERATED FILE. DO NOT EDIT. */
/*=======Automagically Detected Files To Include=====*/
#include "unity.h"
int GlobalExpectCount;
int GlobalVerifyOrder;
char* GlobalOrderError;
/*=======External Functions This Runner Calls=====*/
extern void setUp(void);
extern void tearDown(void);
/*=======Mock Management=====*/
static void CMock_Init(void)
{
GlobalExpectCount = 0;
GlobalVerifyOrder = 0;
GlobalOrderError = NULL;
}
static void CMock_Verify(void)
{
}
static void CMock_Destroy(void)
{
}
/*=======Setup (stub)=====*/
void setUp(void) {}
/*=======Teardown (stub)=====*/
void tearDown(void) {}
/*=======Test Reset Options=====*/
void resetTest(void);
void resetTest(void)
{
tearDown();
CMock_Verify();
CMock_Destroy();
CMock_Init();
setUp();
}
void verifyTest(void);
void verifyTest(void)
{
CMock_Verify();
}
/*=======MAIN=====*/
int main(void)
{
UnityBegin("test_duellist_spielesammlung_projekt.c");
return UnityEnd();
}

76
src/main/duellist-spielesammlung-projekt.c

@ -2,47 +2,47 @@
#include <stdlib.h> #include <stdlib.h>
#include <time.h> #include <time.h>
#define max_hoehe 10
#define max_breite 10
#define zeichen_unbekannt 'x'
#define zeichen_mine '@'
#define max_height 10
#define max_width 10
#define unknown_character 'x'
#define mine_character '@'
int berechneMinen(int hoehe, int breite) {
int anzahl_minen;
if (hoehe <= 1 || breite <= 1) {
int calculate_mines(int height, int width) {
int num_mines;
if (height <= 1 || width <= 1) {
return 0; return 0;
} }
else { else {
anzahl_minen = ((hoehe * breite) / 4);
num_mines = ((height * width) / 4);
} }
return anzahl_minen;
return num_mines;
} }
char** erschafe_minenfeld(int hoehe, int breite, char inerhalb) {
char** minenfeld = (char**)calloc(hoehe, sizeof(char*));
for (int i = 0; i < hoehe; i++) {
minenfeld[i] = (char*)calloc(breite, sizeof(char));
char** create_minefield(int height, int width, char within) {
char** minefield = (char**)calloc(height, sizeof(char*));
for (int i = 0; i < height; i++) {
minefield[i] = (char*)calloc(width, sizeof(char));
} }
for (int i = 0; i < hoehe; i++) {
for (int j = 0; j < breite; j++) {
minenfeld[i][j] = inerhalb;
for (int i = 0; i < height; i++) {
for (int j = 0; j < width; j++) {
minefield[i][j] = within;
} }
} }
return minenfeld;
return minefield;
} }
void verteile_minen(char** mienen, int hoehe, int breite, int anzahl_minen) {
int i, rand_hoehe, rand_breite;
void distribute_mines(char** mines, int height, int width, int num_mines) {
int i, rand_height, rand_width;
srand(time(NULL)); srand(time(NULL));
i = anzahl_minen;
i = num_mines;
while (i > 0) { while (i > 0) {
rand_hoehe = (rand() % hoehe);
rand_breite = (rand() % breite);
if (mienen[rand_hoehe][rand_breite] == 0) {
mienen[rand_hoehe][rand_breite] = 1;
rand_height = (rand() % height);
rand_width = (rand() % width);
if (mines[rand_height][rand_width] == 0) {
mines[rand_height][rand_width] = 1;
i--; i--;
} }
} }
@ -50,22 +50,22 @@ void verteile_minen(char** mienen, int hoehe, int breite, int anzahl_minen) {
int minesweeper() { int minesweeper() {
int hoehe, breite;
printf("Geben Sie an in welcher Hoehe das spielfeld sein soll:\n");
scanf("%d", &hoehe);
printf("Geben Sie an welche Breite das spielfeld haben soll:\n");
scanf("%d", &breite);
if (hoehe <= 0 || breite <= 0 || hoehe > max_hoehe || breite > max_breite) {
printf("Ungueltige Spielfeldabmessungen.\n");
int height, width, row, column;
printf("Enter the height of the game field:\n");
scanf("%d", &height);
printf("Enter the width of the game field:\n");
scanf("%d", &width);
if (height <= 0 || width <= 0 || height > max_height || width > max_width) {
printf("Invalid field dimensions.\n");
return 1; return 1;
} }
int anzahl_minen = berechneMinen(hoehe, breite);
printf("Das Spielfeld ist >%d< gross und hat eine Breite von >%d<\n", hoehe, breite);
printf("Es gibt %d Minen auf dem Spielfeld.\n", anzahl_minen);
//Matrix fuer das Spielfeld
char** minenfield = erschafe_minenfeld(hoehe, breite, zeichen_unbekannt);
char** minen = erschafe_minenfeld(hoehe, breite, 0);
verteile_minen(minen, hoehe, breite, anzahl_minen);
int num_mines = calculate_mines(height, width);
printf("The game field is >%d< in height and >%d< in width.\n", height, width);
printf("There are %d mines on the game field.\n", num_mines);
// Matrix for the game field
char** minefield = create_minefield(height, width, unknown_character);
char** mines = create_minefield(height, width, 0);
distribute_mines(mines, height, width, num_mines);
return 1; return 1;
} }
Loading…
Cancel
Save