Skip to content

Commit

Permalink
Add json file to read from, so the parameters can be changed any time
Browse files Browse the repository at this point in the history
waht.
  • Loading branch information
derekNeedCoffee committed Mar 28, 2016
1 parent d445e2f commit 9f9895a
Show file tree
Hide file tree
Showing 5 changed files with 160 additions and 45 deletions.
18 changes: 18 additions & 0 deletions README.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
To change the parameters for the stadium, Please change in the seatsInformation.json file.

To build/test the application

Go to the project directory( contains the POM.XML) In the command line,
Type commands:

mvn install //For install
mvn test //For Test


/**************************Assumptions***********************/
Assumption 1:
The lower seats are better than higher seats, which are further from the stage.

Assumption 2:
The group seats are better when they sit together. When change rows, start from the end of the next row. So they can sit closer.

8 changes: 8 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,14 @@
<version>1.4</version>
</dependency>

<dependency>
<groupId>com.googlecode.json-simple</groupId>
<artifactId>json-simple</artifactId>
<version>1.1</version>
</dependency>



<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
Expand Down
40 changes: 27 additions & 13 deletions src/WalmartTicketProjectTest/InitializeStadiumTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,24 +12,38 @@
public class InitializeStadiumTest {

InitializeStadium is ;
int numberOfLevels = InitializeStadium.numberOfLevels;
int rowOnOrchestra = InitializeStadium.rowOnOrchestra;
int seatNumOrchestra = InitializeStadium.seatNumOrchestra;
int rowOnMain = InitializeStadium.rowOnMain;
int seatNumMain = InitializeStadium.seatNumMain;
int rowOnBalconyOne =InitializeStadium.rowOnBalconyOne;
int seatNumBalconyOne = InitializeStadium.seatNumBalconyOne;
int rowOnBalconyTwo =InitializeStadium.rowOnBalconyTwo;
int seatNumBalconyTwo = InitializeStadium.seatNumBalconyTwo;
double priceOrchestra = InitializeStadium.priceOrchestra;
double priceMain = InitializeStadium.priceMain;
double priceBalconyOne = InitializeStadium.priceBalconyOne;
double priceBalconyTwo = InitializeStadium.priceBalconyTwo;
int numberOfLevels ;
int rowOnOrchestra ;
int seatNumOrchestra ;
int rowOnMain ;
int seatNumMain ;
int rowOnBalconyOne;
int seatNumBalconyOne;
int rowOnBalconyTwo ;
int seatNumBalconyTwo;
double priceOrchestra ;
double priceMain ;
double priceBalconyOne ;
double priceBalconyTwo;


@BeforeTest
public void setup(){
is = new InitializeStadium();
is.initializedSeats();
numberOfLevels = InitializeStadium.numberOfLevels;
rowOnOrchestra = InitializeStadium.rowOnOrchestra;
seatNumOrchestra = InitializeStadium.seatNumOrchestra;
rowOnMain = InitializeStadium.rowOnMain;
seatNumMain = InitializeStadium.seatNumMain;
rowOnBalconyOne =InitializeStadium.rowOnBalconyOne;
seatNumBalconyOne = InitializeStadium.seatNumBalconyOne;
rowOnBalconyTwo =InitializeStadium.rowOnBalconyTwo;
seatNumBalconyTwo = InitializeStadium.seatNumBalconyTwo;
priceOrchestra = InitializeStadium.priceOrchestra;
priceMain = InitializeStadium.priceMain;
priceBalconyOne = InitializeStadium.priceBalconyOne;
priceBalconyTwo = InitializeStadium.priceBalconyTwo;

}

Expand Down
40 changes: 27 additions & 13 deletions src/WalmartTicketProjectTest/ticketServiceImpTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,19 @@
import ticketServiceInter.SeatHold;

public class ticketServiceImpTest {
int numberOfLevels = InitializeStadium.numberOfLevels;
int rowOnOrchestra = InitializeStadium.rowOnOrchestra;
int seatNumOrchestra = InitializeStadium.seatNumOrchestra;
int rowOnMain = InitializeStadium.rowOnMain;
int seatNumMain = InitializeStadium.seatNumMain;
int rowOnBalconyOne =InitializeStadium.rowOnBalconyOne;
int seatNumBalconyOne = InitializeStadium.seatNumBalconyOne;
int rowOnBalconyTwo =InitializeStadium.rowOnBalconyTwo;
int seatNumBalconyTwo = InitializeStadium.seatNumBalconyTwo;
double priceOrchestra = InitializeStadium.priceOrchestra;
double priceMain = InitializeStadium.priceMain;
double priceBalconyOne = InitializeStadium.priceBalconyOne;
double priceBalconyTwo = InitializeStadium.priceBalconyTwo;
int numberOfLevels ;
int rowOnOrchestra ;
int seatNumOrchestra ;
int rowOnMain ;
int seatNumMain ;
int rowOnBalconyOne;
int seatNumBalconyOne;
int rowOnBalconyTwo ;
int seatNumBalconyTwo;
double priceOrchestra ;
double priceMain ;
double priceBalconyOne ;
double priceBalconyTwo;

InitializeStadium newStad;
TicketServiceImp ticketServiceI;
Expand All @@ -33,6 +33,20 @@ public void setup(){
newStad = new InitializeStadium();
ticketServiceI = new TicketServiceImp();
testEmail = "[email protected]";
newStad.initializedSeats();
numberOfLevels = InitializeStadium.numberOfLevels;
rowOnOrchestra = InitializeStadium.rowOnOrchestra;
seatNumOrchestra = InitializeStadium.seatNumOrchestra;
rowOnMain = InitializeStadium.rowOnMain;
seatNumMain = InitializeStadium.seatNumMain;
rowOnBalconyOne =InitializeStadium.rowOnBalconyOne;
seatNumBalconyOne = InitializeStadium.seatNumBalconyOne;
rowOnBalconyTwo =InitializeStadium.rowOnBalconyTwo;
seatNumBalconyTwo = InitializeStadium.seatNumBalconyTwo;
priceOrchestra = InitializeStadium.priceOrchestra;
priceMain = InitializeStadium.priceMain;
priceBalconyOne = InitializeStadium.priceBalconyOne;
priceBalconyTwo = InitializeStadium.priceBalconyTwo;

}

Expand Down
99 changes: 80 additions & 19 deletions src/ticketServiceImp/InitializeStadium.java
Original file line number Diff line number Diff line change
@@ -1,39 +1,100 @@
package ticketServiceImp;

import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;

import javax.ejb.Singleton;
import javax.json.JsonObject;

import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;

import ticketServiceData.Seat;
import ticketServiceData.StadiumLevel;

@Singleton
public class InitializeStadium {

public final static int numberOfLevels = 4;
public final static int rowOnOrchestra = 25;
public final static int seatNumOrchestra = 50;
public final static int rowOnMain = 20;
public final static int seatNumMain = 100;
public final static int rowOnBalconyOne =15;
public final static int seatNumBalconyOne = 100;
public final static int rowOnBalconyTwo =15;
public final static int seatNumBalconyTwo = 100;
public final static double priceOrchestra = 100;
public final static double priceMain = 75;
public final static double priceBalconyOne = 50;
public final static double priceBalconyTwo = 40;
public final static String orchestraName = "Orchestra";
public final static String mainName = "Main";
public final static String balconyOneName = "BalconyOne";
public final static String balconyTwoName = "BalconyTwo";
public static Integer numberOfLevels ;
public static Integer rowOnOrchestra ;
public static Integer seatNumOrchestra ;
public static Integer rowOnMain ;
public static Integer seatNumMain;
public static Integer rowOnBalconyOne;
public static Integer seatNumBalconyOne;
public static Integer rowOnBalconyTwo ;
public static Integer seatNumBalconyTwo ;
public static Double priceOrchestra ;
public static Double priceMain;
public static Double priceBalconyOne;
public static Double priceBalconyTwo;
public static String orchestraName;
public static String mainName;
public static String balconyOneName;
public static String balconyTwoName;



@SuppressWarnings("null")
public ArrayList<Seat[][]> initializedSeats(){

ArrayList<StadiumLevel> levels = new ArrayList<StadiumLevel>();
JSONParser parser = new JSONParser();
try {
Object obj = parser.parse(new FileReader("seatsInformation.json"));

JSONObject jsonObject = (JSONObject) obj;

orchestraName = (String) jsonObject.get("orchestraName");

mainName = (String) jsonObject.get("mainName");

balconyOneName = (String) jsonObject.get("balconyOneName");

balconyTwoName = (String) jsonObject.get("balconyTwoName");

numberOfLevels = Integer.valueOf((String) jsonObject.get("numberOfLevels"));

rowOnOrchestra = Integer.valueOf((String) jsonObject.get("rowOnOrchestra"));

rowOnMain = Integer.valueOf((String) jsonObject.get("rowOnMain"));

rowOnBalconyOne = Integer.valueOf((String) jsonObject.get("rowOnBalconyOne"));

rowOnBalconyTwo = Integer.valueOf((String) jsonObject.get("rowOnBalconyTwo"));

seatNumOrchestra = Integer.valueOf((String) jsonObject.get("seatNumOrchestra"));

seatNumMain = Integer.valueOf((String) jsonObject.get("seatNumMain"));

seatNumBalconyOne = Integer.valueOf((String) jsonObject.get("seatNumBalconyOne"));

seatNumBalconyTwo = Integer.valueOf((String) jsonObject.get("seatNumBalconyTwo"));

priceOrchestra = Double.valueOf( (String)jsonObject.get("priceOrchestra"));

priceMain = Double.valueOf( (String)jsonObject.get("priceMain"));
priceBalconyOne = Double.valueOf( (String)jsonObject.get("priceBalconyOne"));
priceBalconyTwo = Double.valueOf( (String)jsonObject.get("priceBalconyTwo"));







} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ParseException e) {
e.printStackTrace();
}


ArrayList<StadiumLevel> levels = new ArrayList<StadiumLevel>();
StadiumLevel orchestraLevel = new StadiumLevel(rowOnOrchestra,seatNumOrchestra, orchestraName,priceOrchestra );
levels.add(orchestraLevel);
StadiumLevel mainLevel = new StadiumLevel(rowOnMain,seatNumMain, mainName,priceMain );
Expand Down

0 comments on commit 9f9895a

Please sign in to comment.