New Level type inserted

This commit is contained in:
silas 2018-11-06 19:03:17 +01:00
parent ef098d2ea3
commit 6b9b6d1032
15 changed files with 160 additions and 7943 deletions

1
.idea/wordRotator.iml generated
View File

@ -3,7 +3,6 @@
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/module/Application/src" isTestSource="false" packagePrefix="Application\" />
<sourceFolder url="file://$MODULE_DIR$/src/module/Application/pwa/public" isTestSource="false" />
<excludeFolder url="file://$MODULE_DIR$/public/js" />
<excludeFolder url="file://$MODULE_DIR$/publicTest" />
<excludeFolder url="file://$MODULE_DIR$/vendor/doctrine/event-manager" />

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash
cd $(dirname "$0")/..
npm run build
npm run build 1

View File

@ -2,5 +2,5 @@
cd $(dirname "$0")/..
testcafe firefox test/test.testcafe.js
testcafe firefox test/test.testcafe.js --debug-on-fail
#node bin/testcafe.js;

View File

@ -18,6 +18,7 @@ return [
'driver_options' => array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
),
'charset' => "UTF8",
),
'appVariables' => [

View File

@ -32,6 +32,7 @@ return [
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'
),
'useStrict' => true,
'charset' => 'utf8'
],
),
),

View File

@ -78,10 +78,14 @@ INSERT INTO `Level` (`id`, `words`, `positions`, `renderer`, `lastUpdated`, `lan
(15, '["ARCHIV","CHARME"]', '[1,1,3]', 20, '2018-07-14 17:01:18', 1, 0, 2),
(26, '["BRAUEREI","THERAPIE"]', '[3,2,0,1]', 40, '2018-07-14 17:01:18', 1, 0, 40),
(217, '["ZEITSTRAFE","HOCHSAISON"]', '[1,0,3,3,1]', 60, '2018-07-14 17:01:18', 1, 0, 60),
(220, '["FEINGUSS","R\\u00dcCKFALL","PHYSIKER","RESIDENZ","BERATUNG","KOCHTOPF"]', '[2,0,0,1,2,2,3,3,2,1,1,2,0,0]', 100, '2018-07-14 17:01:18', 1, 0, 100),
(220, '["FEINGUSS","RÜCKFALL","PHYSIKER","RESIDENZ","BERATUNG","KOCHTOPF"]', '[2,0,0,1,2,2,3,3,2,1,1,2,0,0]', 100, '2018-07-14 17:01:18', 1, 0, 100),
(24, '["BETONUNG","ANBETUNG","ALLERGIE","BAUMHAUS"]', '[0,3,1,1,3,1,2,0,0,0]', 120, '2018-07-14 17:01:18', 1, 0, 120),
(62, '["FEHLPROGNOSE","GEISTESKRAFT","ARBEITSPAUSE","BEREITSCHAFT","MOSAIKARBEIT","INFRAROTFILM"]', '[0,3,0,1,0,3,2,3,1,2,3,1,2,2,0,2,3,0,2,1,1]', 140, '2018-07-14 17:01:18', 1, 0, 140),
(260, '["SCHREIBTISCH","URHEBERRECHT","PFLANZENKOST","OPERNKONZERT"]', '[1,3,2,1,3,0,1,2,3,0,2,0,1,0,0]', 160, '2018-07-14 17:01:18', 1, 0, 160),
(67,'["AHNUNG","AUSBAU"]','[0,0,1]',20,'2018-10-10 00:00:00',1,0,1),
(341,'["NACHLASS","BUSLINIE","REITBAHN","LAUFGANG","KASCHMIR","BADETUCH"]','[1,3,0,2,3,0,1,0,0,0,3,1,0,0]',100,'2018-04-15 12:22:11',1,0,61)
(341,'["NACHLASS","BUSLINIE","REITBAHN","LAUFGANG","KASCHMIR","BADETUCH"]','[1,3,0,2,3,0,1,0,0,0,3,1,0,0]',100,'2018-04-15 12:22:11',1,0,90),
(1921,'["HACKBRATEN","FLÜCHTLING","HOFTHEATER","KIELWASSER"]','[3,1,3,0,0,1,3,0,1,0,1]',81,'2018-11-06 17:08:37',1,0,70),
(2270,'["AUFKLÄRUNG","FALTENROCK","HERZFEHLER","RESTAURANT"]','[0,0,0,2,0,1,0,3,2,1,3]',80,'2018-11-06 17:08:50',1,0,80),
(2266,'["SPRÜHREGEN","SITZKISSEN","FÜHRERHAUS","NAVIGATION"]','[3,1,1,2,1,3,3,3,2,1,3]',82,'2018-11-06 17:08:50',1,0,81),
(2265,'["ZINSESZINS","TISCHLAMPE","ABSPALTUNG","BRANDWUNDE"]','[2,3,3,2,2,3,0,1,0,1,2]',83,'2018-11-06 17:08:50',1,0,82)
;

View File

@ -1,2 +1,7 @@
UPDATE Level SET words = REPLACE(words, "\\u00fc", "Ü");
UPDATE Level SET words = REPLACE(words, "\\u00dc", "Ü");
UPDATE Level SET words = REPLACE(words, "\\u00f6", "Ö");
UPDATE Level SET words = REPLACE(words, "\\u00df", "ß");
UPDATE Level SET words = REPLACE(words, "\\u00e4", "Ä");
UPDATE Word SET Word.used = 0;
UPDATE Word SET Word.used = 1 WHERE deleted = 0 AND (SELECT count(*) FROM Level WHERE words LIKE CONCAT("%\"", Word.word, "\"%") AND deleted = 0) > 0

File diff suppressed because one or more lines are too long

View File

@ -202,7 +202,8 @@
}
});
}).then(function () {
if ('serviceWorker' in navigator) {
//No ServiceWorker for android!
if ('serviceWorker' in navigator && !window["android"]) {
console.log('sw in nav');
navigator.serviceWorker.register("service-worker.js").then(function (reg) {
if (reg.active) {

File diff suppressed because one or more lines are too long

View File

@ -438,12 +438,14 @@ export class LevelSite extends WordRotatorBaseSite {
let rotatableSegments = this.level.getRotatableSegments();
let firstSegment = rotatableSegments[2];
console.log(firstSegment);
let pointer = this.findBy("#tutorial-pointer");
pointer.remove();
firstSegment.element.appendChild(pointer);
this.level.setSegmentClickedListener((segment) => {
console.log("clicked Segment", segment);
if (firstSegment === segment) {
this._siteContent.classList.remove("tutorial");
this._siteContent.classList.remove("step-4");
@ -470,5 +472,5 @@ LevelSite.RENDERER_TYPES = [20, 40, 60, 80, 81, 82, 83, 100, 120, 140, 160];
LevelSite.TUTORIAL = {
FIRST_LEVEL: 67,
SECOND_LEVEL: 15,
BIG_SEGMENT_LEVEL: 1386
BIG_SEGMENT_LEVEL: 1921
};

View File

@ -254,7 +254,7 @@ class LevelManager extends StandardManager
array_splice($levelsToGenerate, $currentIndex, 1);
}
} while (count($levelsToGenerate) > 0);
} while (count($levelsToGenerate) > 0 && $levelGenerated < 500);
$this->emFlush();
$this->wordManager->emFlush();

View File

@ -1,9 +1,9 @@
@keyframes tutorialPointer {
0% {
top: 75%;
top: 25%;
}
100% {
top: 25%;
top: 75%;
}
}
@ -96,11 +96,11 @@
border-radius: 50%;
left: 25%;
right: 50%;
left: 75%;
//right: 50%;
position: absolute;
top: 75%;
bottom: 50%;
//bottom: 50%;
z-index: 1;
transform: translate(-50%, -50%);

View File

@ -25,7 +25,7 @@ nav.top-bar.title-bar {
}
}
.relative-level-number{
.relative-level-number {
position: relative;
#level-number-container {
top: 50%;
@ -197,7 +197,7 @@ $coinTowerDimension: 28px;
> .child-container {
> .segment {
//transform: rotate(#{360- nth($rotationDegrees, $i)}deg);
transform: #{map-get($degreeMatrix, 360- nth($rotationDegrees, $i))};
transform: #{map-get($degreeMatrix, 360- nth($rotationDegrees, $i))};
background-color: inherit;
z-index: 1;
@ -247,6 +247,7 @@ $coinTowerDimension: 28px;
}
.segment {
vertical-align: top;
white-space: initial;
cursor: pointer;
@ -267,7 +268,8 @@ $coinTowerDimension: 28px;
}
&.segment-column {
> .child-container > .segment{
padding-top: 4px;
> .child-container > .segment {
display: block;
width: 100%;
}
@ -376,7 +378,8 @@ body {
#site-content {
overflow: visible;
}
div.mainContainer{
div.mainContainer {
overflow-x: hidden;
}
@ -387,13 +390,13 @@ div.mainContainer{
// background: url('../img/speaker.svg')
//}
.clickable{
.clickable {
cursor: pointer;
}
#share-button {
overflow: hidden;
svg{
svg {
cursor: pointer;
max-width: 1.5rem;
}

View File

@ -1,7 +1,7 @@
import {Selector} from 'testcafe';
import {ClientFunction} from 'testcafe';
let isLocal = false;
let isLocal = true;
let isMobile = false;
const checkMatrix = async (matrixStringSelector, shouldValues, timeout) => {
@ -22,7 +22,7 @@ const checkMatrix = async (matrixStringSelector, shouldValues, timeout) => {
return await checkMatrix(matrixStringSelector._reExecute(), shouldValues, timeout - step)
}
else {
console.error(values[i] +" not "+ shouldValues[i] + " with", values, shouldValues, i );
console.error(values[i] + " not " + shouldValues[i] + " with", values, shouldValues, i);
return false;
}
}
@ -86,7 +86,7 @@ else {
}
let dragDimen = 280;
if (isMobile){
if (isMobile) {
dragDimen = 90;
}
@ -134,7 +134,7 @@ test('Play', async t => {
.expect(Selector('.tutorial-text .step-1').visible).eql(false)
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.expect(Selector('.tutorial-text .step-2').visible).eql(true);
await t.click(Selector('.segment-parent').nth(SEGMENT.THREE))
await t.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.expect(Selector('#continue-button').visible).eql(true)
.click(Selector('#continue-button'))
.wait(1000);
@ -170,9 +170,9 @@ test('Play', async t => {
.expect(Selector('.segment-parent').nth(SEGMENT.TWO).textContent).eql("AUER")
.expect(Selector('.segment-parent').nth(SEGMENT.THREE).textContent).eql("ERAP")
.expect(Selector('.segment-parent').nth(SEGMENT.FOUR).textContent).eql("EIIE")
.expect(await checkMatrix(Selector('.segment.segment-parent.rotate-270').nth(0).getStyleProperty('transform'), [0, -1, 1, 0, ])).ok()
.expect(await checkMatrix(Selector('.segment.segment-parent.rotate-180').getStyleProperty('transform'), [-1, 0, 0, -1, ])).ok()
.expect(await checkMatrix(Selector('.segment.segment-parent.rotate-360').getStyleProperty('transform'), [1, 0, 0, 1, ])).ok()
.expect(await checkMatrix(Selector('.segment.segment-parent.rotate-270').nth(0).getStyleProperty('transform'), [0, -1, 1, 0,])).ok()
.expect(await checkMatrix(Selector('.segment.segment-parent.rotate-180').getStyleProperty('transform'), [-1, 0, 0, -1,])).ok()
.expect(await checkMatrix(Selector('.segment.segment-parent.rotate-360').getStyleProperty('transform'), [1, 0, 0, 1,])).ok()
.expect(Selector('#continue-button').visible).eql(false)
.expect(Selector('#level-number').textContent).eql("3")
.expect(Selector('#won-text').visible).eql(false)
@ -180,9 +180,9 @@ test('Play', async t => {
.click(Selector('.segment-parent').nth(SEGMENT.ONE))
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.TWO).getStyleProperty('transform'), [1, 0, 0, 1, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.TWO).getStyleProperty('transform'), [1, 0, 0, 1,])).ok()
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.TWO).getStyleProperty('transform'), [1, 0, 0, 1, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.TWO).getStyleProperty('transform'), [1, 0, 0, 1,])).ok()
.expect(Selector('#won-text').visible).eql(true)
.expect(Selector('#continue-button').visible).eql(true)
.click(Selector('#continue-button'))
@ -208,6 +208,98 @@ test('Play', async t => {
levelNumber++;
await t
.drag(Selector('.segment-parent').nth(SEGMENT.THREE), dragDimen, 4, {
offsetX: 10,
offsetY: 17
})
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
.click(Selector('.segment-parent').nth(SEGMENT.ONE))
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
.click(Selector('.segment-parent').nth(SEGMENT.SEVEN))
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
.click(Selector('#continue-button'))
.expect(Selector('.coin-counter').innerText).contains("" + (coinsPerLevel * levelNumber + extraCoins - helpCost));
levelNumber++;
await t
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
.click(Selector('.segment-parent').nth(SEGMENT.EIGHT))
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
.click(Selector('#continue-button'))
.expect(Selector('.coin-counter').innerText).contains("" + (coinsPerLevel * levelNumber + extraCoins - helpCost));
levelNumber++;
await t
.drag(Selector('.segment-parent').nth(SEGMENT.FIVE), -dragDimen, 4, {
offsetX: dragDimen + 50,
offsetY: 17
})
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
.click(Selector('.segment-parent').nth(SEGMENT.ONE))
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
.click(Selector('.segment-parent').nth(SEGMENT.SEVEN))
.click(Selector('.segment-parent').nth(SEGMENT.EIGHT))
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
.click(Selector('#continue-button'))
.expect(Selector('.coin-counter').innerText).contains("" + (coinsPerLevel * levelNumber + extraCoins - helpCost));
levelNumber++;
await t
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
.click(Selector('.segment-parent').nth(SEGMENT.EIGHT))
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
.click(Selector('.segment-parent').nth(SEGMENT.FIVE))
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
.click(Selector('.segment-parent').nth(SEGMENT.ONE))
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
.click(Selector('.segment-parent').nth(SEGMENT.SIX))
.click(Selector('.segment-parent').nth(SEGMENT.ONE))
.click(Selector('.segment-parent').nth(SEGMENT.EIGHT))
.click(Selector('.segment-parent').nth(SEGMENT.FIVE))
.click(Selector('.segment-parent').nth(SEGMENT.TEN))
.click(Selector('.segment-parent').nth(SEGMENT.ELEVEN))
.click(Selector('.segment-parent').nth(SEGMENT.EIGHT))
.click(Selector('#continue-button'))
.expect(Selector('.coin-counter').innerText).contains("" + (coinsPerLevel * levelNumber + extraCoins - helpCost));
levelNumber++;
await t.drag(Selector('.segment-parent').nth(SEGMENT.ONE), -dragDimen, 4, {
offsetX: dragDimen + 50,
offsetY: 17
@ -244,24 +336,24 @@ test('Play', async t => {
.expect(Selector('.segment-parent').nth(SEGMENT.THIRTEEN).textContent).eql("TUTO")
.expect(Selector('.segment-parent').nth(SEGMENT.FOURTEEN).textContent).eql("NGPF")
.drag(Selector('.segment-parent').nth(SEGMENT.TEN), dragDimen, 4, {
offsetX: dragDimen/5,
offsetX: dragDimen / 5,
offsetY: 10
})
.drag(Selector('.segment-parent').nth(SEGMENT.ONE), dragDimen, 3, {
offsetX: dragDimen/5,
offsetX: dragDimen / 5,
offsetY: 10
})
.drag(Selector('.segment-parent').nth(SEGMENT.TEN).find('div').withText('I'), dragDimen, 4, {
offsetX: dragDimen/5,
offsetY: dragDimen/5
offsetX: dragDimen / 5,
offsetY: dragDimen / 5
})
.drag(Selector('.segment-parent').nth(SEGMENT.ONE).find('div').withText('S'), 10, dragDimen, {
offsetX: dragDimen,
offsetY: dragDimen/5
offsetY: dragDimen / 5
})
.drag(Selector('.segment-parent').nth(SEGMENT.TEN), dragDimen, 4, {
offsetX: 10,
offsetY: dragDimen/5
offsetY: dragDimen / 5
})
.click(Selector('.segment-parent').nth(SEGMENT.NINE))
.click(Selector('.segment-parent').nth(SEGMENT.EIGHT))
@ -290,15 +382,15 @@ test('Play', async t => {
await t.expect(Selector('#level-number').textContent).eql("" + levelNumber)
.expect(Selector('.segment-parent').nth(SEGMENT.ONE).textContent).eql("BEANTOBEALBALEUM")
.expect(Selector('.segment-parent').nth(SEGMENT.SIX).textContent).eql("NUTUNGNGRGHAIEUS")
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.ONE).getStyleProperty('transform'), [1, 0, 0, 1, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.SIX).getStyleProperty('transform'), [0, 1, -1, 0, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.ONE).getStyleProperty('transform'), [1, 0, 0, 1,])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.SIX).getStyleProperty('transform'), [0, 1, -1, 0,])).ok()
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
.click(Selector('.segment-parent').nth(SEGMENT.TWO))
.drag(Selector('.segment-parent').nth(SEGMENT.SIX).find('div').withText('U'), 3, dragDimen, {
offsetX: 10,
offsetY: dragDimen/5
offsetY: dragDimen / 5
})
.click(Selector('.segment-parent').nth(SEGMENT.SEVEN))
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
@ -316,8 +408,8 @@ test('Play', async t => {
//Level 6
await t.expect(Selector('#level-number').textContent).eql("" + levelNumber)
.expect(Selector('.segment-parent').nth(SEGMENT.ONE).textContent).eql("FEGEHLISARBEBERE")
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.ONE).getStyleProperty('transform'), [1, 0, 0, 1, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.TEN).getStyleProperty('transform'), [-1, 0, 0, -1, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.ONE).getStyleProperty('transform'), [1, 0, 0, 1,])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.TEN).getStyleProperty('transform'), [-1, 0, 0, -1,])).ok()
.expect(Selector('.segment-parent').nth(SEGMENT.TEN).textContent).eql("ITITSPSCIKARAROT")
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
@ -358,7 +450,7 @@ test('Play', async t => {
offsetX: 10,
offsetY: 10
})
.expect(await checkMatrix(Selector('div').withText('P').nth(11).find('.segment.segment-parent.layer-2.rotate-360').getStyleProperty('transform'), [1, 0, 0, 1, ])).ok()
.expect(await checkMatrix(Selector('div').withText('P').nth(11).find('.segment.segment-parent.layer-2.rotate-360').getStyleProperty('transform'), [1, 0, 0, 1,])).ok()
.expect(Selector('#continue-button').visible).eql(true)
.expect(Selector('#won-text').visible).eql(true)
.click(Selector('#continue-button'))
@ -366,7 +458,7 @@ test('Play', async t => {
levelNumber++;
//Level 7
await t.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.SIX).getStyleProperty('transform'), [1, 0, 0, 1, ])).ok()
await t.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.SIX).getStyleProperty('transform'), [1, 0, 0, 1,])).ok()
.expect(Selector('.segment-row > .child-container').childElementCount).eql(3)
.drag(Selector('.segment-parent').nth(SEGMENT.ONE), 4, dragDimen, {
@ -408,9 +500,9 @@ test('LoadLastLevel', async t => {
await waitForMainMenu(t);
await t.click(Selector('#play-button')).wait(500)
.expect(Selector('.segment-parent').nth(SEGMENT.ONE).hasClass('locked')).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.ONE).getStyleProperty('transform'), [1, 0, 0, 1, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.TWO).getStyleProperty('transform'), [1, 0, 0, 1, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.THREE).getStyleProperty('transform'), [0, -1, 1, 0, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.ONE).getStyleProperty('transform'), [1, 0, 0, 1,])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.TWO).getStyleProperty('transform'), [1, 0, 0, 1,])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.THREE).getStyleProperty('transform'), [0, -1, 1, 0,])).ok()
}).before(async t => {
await testLocalStorageSet("currentLevel", "{\"id\":15,\"rotations\":[0,0,270],\"locks\":[false,true,true]}");
});
@ -420,10 +512,10 @@ test('LevelRotation', async t => {
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.THREE).getStyleProperty('transform'), [0, -1, 1, 0, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.THREE).getStyleProperty('transform'), [0, -1, 1, 0,])).ok()
.wait(1000)
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.THREE).getStyleProperty('transform'), [0, -1, 1, 0, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.FOUR).getStyleProperty('transform'), [0, 1, -1, 0, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.THREE).getStyleProperty('transform'), [0, -1, 1, 0,])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.FOUR).getStyleProperty('transform'), [0, 1, -1, 0,])).ok()
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
@ -436,10 +528,10 @@ test('LevelRotation', async t => {
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.THREE).getStyleProperty('transform'), [0, -1, 1, 0, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.THREE).getStyleProperty('transform'), [0, -1, 1, 0,])).ok()
.wait(2000)
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.THREE).getStyleProperty('transform'), [0, -1, 1, 0, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.FOUR).getStyleProperty('transform'), [0, 1, -1, 0, ])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.THREE).getStyleProperty('transform'), [0, -1, 1, 0,])).ok()
.expect(await checkMatrix(Selector('.segment-parent').nth(SEGMENT.FOUR).getStyleProperty('transform'), [0, 1, -1, 0,])).ok()
.click(Selector('.segment-parent').nth(SEGMENT.THREE))
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))
.click(Selector('.segment-parent').nth(SEGMENT.FOUR))