Skip to content

Commit 8eed88b

Browse files
committed
Added test cases
1 parent 8e992a4 commit 8eed88b

File tree

2 files changed

+82
-0
lines changed

2 files changed

+82
-0
lines changed
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package com;
2+
3+
import com.squareup.javapoet.JavaFile;
4+
import com.structural.Flyweight;
5+
import org.junit.jupiter.api.Test;
6+
7+
import java.io.File;
8+
import java.io.IOException;
9+
import java.nio.file.Files;
10+
import java.nio.file.Path;
11+
import java.nio.file.Paths;
12+
13+
import static org.junit.jupiter.api.Assertions.*;
14+
15+
class DesignPatternTest {
16+
String[] classNames = {"Flyweight", "ConcreteFlyweight","UnsharedConcreteFlyweight","FlyweightFactory"};
17+
String packageName = "com.test_generateCode.flyweight";
18+
19+
@Test
20+
void test_generateCode() throws IOException {
21+
22+
// Test Case to verify generateCode() returns JavaFile[] object
23+
24+
assertEquals(JavaFile[].class,new Flyweight(0).generateCode(classNames, packageName).getClass());
25+
}
26+
27+
@Test
28+
void test_writeJavaFiles() throws IOException {
29+
30+
// Test Case to verify the generated java files are written successfully in the output folder
31+
int mode = 0;
32+
Flyweight test = new Flyweight(mode);
33+
JavaFile[] test_files = test.generateCode(classNames, packageName);
34+
test.writeJavaFiles(test_files);
35+
Path path = Paths.get("outputs/com/test_generateCode/flyweight");
36+
assertTrue(Files.exists(path));
37+
38+
39+
}
40+
41+
}
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package com;
2+
3+
import com.structural.Flyweight;
4+
import org.junit.jupiter.api.Test;
5+
6+
import java.io.IOException;
7+
8+
9+
import static org.junit.jupiter.api.Assertions.*;
10+
11+
class Hw1DesignPatternGeneratorTest {
12+
13+
14+
@Test
15+
void test_getInstance() {
16+
17+
// Test Case to verify only 1 instance of Hw1DesignPatternGenerator is created each time
18+
19+
Hw1DesignPatternGenerator firstInstance = Hw1DesignPatternGenerator.getInstance();
20+
Hw1DesignPatternGenerator secondInstance = Hw1DesignPatternGenerator.getInstance();
21+
22+
assertEquals(firstInstance,secondInstance);
23+
}
24+
25+
26+
@Test
27+
void chooseDesignPattern() throws IOException {
28+
29+
//Test Case to verify correct design pattern file is executed when user inputs the choice of design pattern
30+
// Here Flyweight( 11 ) is selected.
31+
32+
DesignPattern design_pattern2 = Hw1DesignPatternGenerator.getInstance().chooseDesignPattern(11,0);
33+
assertEquals(Flyweight.class,design_pattern2.getClass());
34+
35+
// Test Case to check null is returned on selecting incorrect design pattern choice
36+
int choice = 75;
37+
DesignPattern design_pattern = Hw1DesignPatternGenerator.getInstance().chooseDesignPattern(choice,0);
38+
assertNull(design_pattern);
39+
40+
}
41+
}

0 commit comments

Comments
 (0)