You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

87 lines
2.1 KiB

//Imports
const uno = require('../js/uno');
const Card = require('../js/cards/Card');
const ChooseColor = require('../js/cards/special/ChooseColor');
const Skip = require('../js/cards/special/Skip');
const Reverse = require('../js/cards/special/Reverse');
//Instanz CARD_COLORS aus uno.js
const CARD_COLORS = uno.CARD_COLORS;
//Testet das Erstellen einer Karte
describe('Karten erstellen', () => {
let card;
it('6 - Blau', () => {
//Erstellen einer normalen Karte:
// Name: 6, Farbe: Blau
card = new Card('6', CARD_COLORS[1]);
//Testet das Erstellen der Karte
testCreatedCard(card, '6', "BLUE");
});
it('8 - Grün', () => {
//Erstellen einer normalen Karte:
// Name: 6, Farbe: Blau
card = new Card('8', CARD_COLORS[2]);
//Testet das Erstellen der Karte
testCreatedCard(card, '8', "GREEN");
});
it('ChooseColor', () => {
//Erstellen einer +2 Karte:
//Name: CC, Farbe: keine
card = new ChooseColor('CC');
//Testet das Erstellen der Karte
testCreatedCard(card, 'CC', "NONE");
});
it('Skip - Gelb', () => {
//Erstellen einer Skip Karte:
//Name: Skip, Farbe: gelb
card = new Skip('S', CARD_COLORS[4]);
//Testet das Erstellen der Karte
testCreatedCard(card, 'S', "YELLOW");
});
it('Reverse - Grün', () => {
//Erstellen einer Reverse Karte:
//Name: Reverse, Farbe: grün
card = new Reverse('R', CARD_COLORS[2]);
//Testet das Erstellen der Karte
testCreatedCard(card, 'R', "GREEN");
});
});
//Testet eine Karte auf die Eigenschaften von Card.js
function testCreatedCard(card, number, card_colors){
//Wenn Karte erstellt, wird Sie noch nicht auf dem Bildschirm abgebildet
expect(card.onScreen).toBe(false);
//Wenn Karte erstellt, kann sie noch nicht gesetzt werden
expect(card.canPut).toBe(false);
//Name der Karte muss der übergebene Name sein
expect(card.name).toBe(number);
//Farbe der Karte muss die übergebene Farbe sein
expect(card.color).toBe(card_colors);
}