Test files
verification/TestModule/Test/AssertTest.xml
")
*/
class AssertTestCest
{
/**
* @param AcceptanceTester $I
* @throws \Exception
*/
public function _before(AcceptanceTester $I)
{
$I->comment("[createData1] create 'ReplacementPerson' entity");
PersistedObjectHandler::getInstance()->createEntity(
"createData1",
"hook",
"ReplacementPerson",
[],
[]
);
}
/**
* @Features({"TestModule"})
* @Parameter(name = "AcceptanceTester", value="$I")
* @param AcceptanceTester $I
* @return void
* @throws \Exception
*/
public function AssertTest(AcceptanceTester $I)
{
$I->comment("[createData2] create 'UniquePerson' entity");
PersistedObjectHandler::getInstance()->createEntity(
"createData2",
"test",
"UniquePerson",
[],
[]
);
$grabTextFrom1 = $I->grabTextFrom(".copyright>span"); // stepKey: grabTextFrom1
$I->comment("custom asserts");
$I->assertArrayIsSorted(["1", "2", "3", "4", "5"], "asc"); // stepKey: assertSorted1
$I->comment("asserts without variable replacement");
$I->comment("asserts without variable replacement");
$I->assertArrayHasKey("apple", ['orange' => 2, 'apple' => 1], "pass"); // stepKey: assertArrayHasKey
$I->assertArrayNotHasKey("kiwi", ['orange' => 2, 'apple' => 1], "pass"); // stepKey: assertArrayNotHasKey
$I->assertArraySubset([1, 2], [1, 2, 3, 5], "pass"); // stepKey: assertArraySubset
$I->assertContains("ab", ['item1' => 'a', 'item2' => 'ab'], "pass"); // stepKey: assertContains
$I->assertCount(2, ['a', 'b'], "pass"); // stepKey: assertCount
$I->assertEmpty([], "pass"); // stepKey: assertEmpty
$I->assertEquals($text, "Copyright © 2013-2017 Magento, Inc. All rights reserved.", "pass"); // stepKey: assertEquals1
$I->assertEquals("Copyright © 2013-2017 Magento, Inc. All rights reserved.", $text, "pass"); // stepKey: assertEquals2
$I->assertFalse(false, "pass"); // stepKey: assertFalse1
$I->assertFileNotExists("/out.txt", "pass"); // stepKey: assertFileNotExists1
$I->assertFileNotExists($text, "pass"); // stepKey: assertFileNotExists2
$I->assertGreaterOrEquals(2, 5, "pass"); // stepKey: assertGreaterOrEquals
$I->assertGreaterThan(2, 5, "pass"); // stepKey: assertGreaterthan
$I->assertGreaterThanOrEqual(2, 5, "pass"); // stepKey: assertGreaterThanOrEqual
$I->assertInternalType("string", "xyz", "pass"); // stepKey: assertInternalType1
$I->assertInternalType("int", 21, "pass"); // stepKey: assertInternalType2
$I->assertInternalType("string", $text, "pass"); // stepKey: assertInternalType3
$I->assertLessOrEquals(5, 2, "pass"); // stepKey: assertLessOrEquals
$I->assertLessThan(5, 2, "pass"); // stepKey: assertLessThan
$I->assertLessThanOrEqual(5, 2, "pass"); // stepKey: assertLessThanOrEquals
$I->assertNotContains("bc", ['item1' => 'a', 'item2' => 'ab'], "pass"); // stepKey: assertNotContains1
$I->assertNotContains("bc", $text, "pass"); // stepKey: assertNotContains2
$I->assertNotEmpty([1, 2], "pass"); // stepKey: assertNotEmpty1
$I->assertNotEmpty($text, "pass"); // stepKey: assertNotEmpty2
$I->assertNotEquals(2, 5, "pass", 0); // stepKey: assertNotEquals
$I->assertNotNull("abc", "pass"); // stepKey: assertNotNull1
$I->assertNotNull($text, "pass"); // stepKey: assertNotNull2
$I->assertNotRegExp("/foo/", "bar", "pass"); // stepKey: assertNotRegExp
$I->assertNotSame("log", "tag", "pass"); // stepKey: assertNotSame
$I->assertRegExp("/foo/", "foo", "pass"); // stepKey: assertRegExp
$I->assertSame("bar", "bar", "pass"); // stepKey: assertSame
$I->assertStringStartsNotWith("a", "banana", "pass"); // stepKey: assertStringStartsNotWith
$I->assertStringStartsWith("a", "apple", "pass"); // stepKey: assertStringStartsWith
$I->assertTrue(true, "pass"); // stepKey: assertTrue
$I->comment("asserts backward compatible");
$I->comment("asserts backward compatible");
$I->assertArrayHasKey("apple", ['orange' => 2, 'apple' => 1], "pass"); // stepKey: assertArrayHasKeyBackwardCompatible
$I->assertArrayNotHasKey("kiwi", ['orange' => 2, 'apple' => 1], "pass"); // stepKey: assertArrayNotHasKeyBackwardCompatible
$I->assertArraySubset([1, 2], [1, 2, 3, 5], "pass"); // stepKey: assertArraySubsetBackwardCompatible
$I->assertContains("ab", ['item1' => 'a', 'item2' => 'ab'], "pass"); // stepKey: assertContainsBackwardCompatible
$I->assertCount(2, ['a', 'b'], "pass"); // stepKey: assertCountBackwardCompatible
$I->assertEmpty([], "pass"); // stepKey: assertEmptyBackwardCompatible
$I->assertEquals($text, "Copyright © 2013-2017 Magento, Inc. All rights reserved.", "pass"); // stepKey: assertEquals1BackwardCompatible
$I->assertEquals("Copyright © 2013-2017 Magento, Inc. All rights reserved.", $text, "pass"); // stepKey: assertEquals2BackwardCompatible
$I->assertFalse(false, "pass"); // stepKey: assertFalse1BackwardCompatible
$I->assertFileNotExists("/out.txt", "pass"); // stepKey: assertFileNotExists1BackwardCompatible
$I->assertFileNotExists($text, "pass"); // stepKey: assertFileNotExists2BackwardCompatible
$I->assertGreaterOrEquals(2, 5, "pass"); // stepKey: assertGreaterOrEqualsBackwardCompatible
$I->assertGreaterThan(2, 5, "pass"); // stepKey: assertGreaterThanBackwardCompatible
$I->assertGreaterThanOrEqual(2, 5, "pass"); // stepKey: assertGreaterThanOrEqualBackwardCompatible
$I->assertInternalType("string", "xyz", "pass"); // stepKey: assertInternalType1BackwardCompatible
$I->assertInternalType("int", 21, "pass"); // stepKey: assertInternalType2BackwardCompatible
$I->assertInternalType("string", $text, "pass"); // stepKey: assertInternalType3BackwardCompatible
$I->assertLessOrEquals(5, 2, "pass"); // stepKey: assertLessOrEqualBackwardCompatibles
$I->assertLessThan(5, 2, "pass"); // stepKey: assertLessThanBackwardCompatible
$I->assertLessThanOrEqual(5, 2, "pass"); // stepKey: assertLessThanOrEqualBackwardCompatible
$I->assertNotContains("bc", ['item1' => 'a', 'item2' => 'ab'], "pass"); // stepKey: assertNotContains1BackwardCompatible
$I->assertNotContains("bc", $text, "pass"); // stepKey: assertNotContains2BackwardCompatible
$I->assertNotEmpty([1, 2], "pass"); // stepKey: assertNotEmpty1BackwardCompatible
$I->assertNotEmpty($text, "pass"); // stepKey: assertNotEmpty2BackwardCompatible
$I->assertNotEquals(2, 5, "pass", 0); // stepKey: assertNotEqualsBackwardCompatible
$I->assertNotNull("abc", "pass"); // stepKey: assertNotNull1BackwardCompatible
$I->assertNotNull($text, "pass"); // stepKey: assertNotNull2BackwardCompatible
$I->assertNotRegExp("/foo/", "bar", "pass"); // stepKey: assertNotRegExpBackwardCompatible
$I->assertNotSame("log", "tag", "pass"); // stepKey: assertNotSameBackwardCompatible
$I->assertRegExp("/foo/", "foo", "pass"); // stepKey: assertRegExpBackwardCompatible
$I->assertSame("bar", "bar", "pass"); // stepKey: assertSameBackwardCompatible
$I->assertStringStartsNotWith("a", "banana", "pass"); // stepKey: assertStringStartsNotWithBackwardCompatible
$I->assertStringStartsWith("a", "apple", "pass"); // stepKey: assertStringStartsWithBackwardCompatible
$I->assertTrue(true, "pass"); // stepKey: assertTrueBackwardCompatible
$I->assertElementContainsAttribute("#username", "class", "admin__control-text"); // stepKey: assertElementContainsAttributeBackwardCompatible
$I->assertInstanceOf(User::class, $text, "pass"); // stepKey: assertInstanceOfBackwardCompatible
$I->assertNotInstanceOf(User::class, 21, "pass"); // stepKey: assertNotInstanceOfBackwardCompatible
$I->assertFileExists($text, "pass"); // stepKey: assertFileExistsBackwardCompatible
$I->assertIsEmpty($text, "pass"); // stepKey: assertIsEmptyBackwardCompatible
$I->assertNull($text, "pass"); // stepKey: assertNullBackwardCompatible
$I->expectException(new MyException('exception msg'), function() {$this->doSomethingBad();}); // stepKey: expectExceptionBackwardCompatible
$I->comment("string type that use created data");
$I->comment("string type that use created data");
$I->assertStringStartsWith("D", PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'lastname', 'test') . ", " . PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'firstname', 'test'), "fail"); // stepKey: assert1
$I->assertStringStartsNotWith("W", PersistedObjectHandler::getInstance()->retrieveEntityField('createData2', 'firstname', 'test') . ", " . PersistedObjectHandler::getInstance()->retrieveEntityField('createData2', 'lastname', 'test'), "pass"); // stepKey: assert2
$I->assertEquals(PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'lastname', 'test'), PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'lastname', 'test'), "pass"); // stepKey: assert5
$I->comment("array type that use created data");
$I->comment("array type that use created data");
$I->assertArraySubset([PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'lastname', 'test'), PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'firstname', 'test')], [PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'lastname', 'test'), PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'firstname', 'test'), "1"], "pass"); // stepKey: assert9
$I->assertArraySubset([PersistedObjectHandler::getInstance()->retrieveEntityField('createData2', 'firstname', 'test'), PersistedObjectHandler::getInstance()->retrieveEntityField('createData2', 'lastname', 'test')], [PersistedObjectHandler::getInstance()->retrieveEntityField('createData2', 'firstname', 'test'), PersistedObjectHandler::getInstance()->retrieveEntityField('createData2', 'lastname', 'test'), "1"], "pass"); // stepKey: assert10
$I->assertArrayHasKey("lastname", ['lastname' => PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'lastname', 'test'), 'firstname' => PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'firstname', 'test')], "pass"); // stepKey: assert3
$I->assertArrayHasKey("lastname", ['lastname' => PersistedObjectHandler::getInstance()->retrieveEntityField('createData2', 'lastname', 'test'), 'firstname' => PersistedObjectHandler::getInstance()->retrieveEntityField('createData2', 'firstname', 'test')], "pass"); // stepKey: assert4
$I->comment("this section can only be generated and cannot run");
$I->assertInstanceOf(User::class, $text, "pass"); // stepKey: assertInstanceOf
$I->assertNotInstanceOf(User::class, 21, "pass"); // stepKey: assertNotInstanceOf
$I->assertFileExists($text, "pass"); // stepKey: assertFileExists2
$I->assertFileExists("AssertCest.php", "pass"); // stepKey: assertFileExists3
$I->assertIsEmpty($text, "pass"); // stepKey: assertIsEmpty
$I->assertNull($text, "pass"); // stepKey: assertNull
$I->expectException(new MyException('exception msg'), function() {$this->doSomethingBad();}); // stepKey: expectException
$I->fail("fail"); // stepKey: fail
$I->fail(PersistedObjectHandler::getInstance()->retrieveEntityField('createData2', 'firstname', 'test') . " " . PersistedObjectHandler::getInstance()->retrieveEntityField('createData2', 'lastname', 'test')); // stepKey: assert7
$I->fail(PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'firstname', 'test') . " " . PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'lastname', 'test')); // stepKey: assert8
$I->comment("assertElementContainsAttribute examples");
$I->assertElementContainsAttribute("#username", "class", "admin__control-text"); // stepKey: assertElementContainsAttribute1
$I->assertElementContainsAttribute("#username", "name", "login[username]"); // stepKey: assertElementContainsAttribute2
$I->assertElementContainsAttribute("#username", "autofocus", "true"); // stepKey: assertElementContainsAttribute3
$I->assertElementContainsAttribute("#username", "data-validate", "{required:true}"); // stepKey: assertElementContainsAttribute4
$I->assertElementContainsAttribute(".admin__menu-overlay", "style", "display: none;"); // stepKey: assertElementContainsAttribute5
$I->assertElementContainsAttribute(".admin__menu-overlay", "border", "0"); // stepKey: assertElementContainsAttribute6
$I->assertElementContainsAttribute("#username", "value", PersistedObjectHandler::getInstance()->retrieveEntityField('createData2', 'firstname', 'test')); // stepKey: assertElementContainsAttribute7
$I->assertElementContainsAttribute("#username", "value", PersistedObjectHandler::getInstance()->retrieveEntityField('createData1', 'firstname', 'test')); // stepKey: assertElementContainsAttribute8
$I->comment("assert entity resolution");
$I->assertEquals("John", "Doe", "pass"); // stepKey: assertEqualsEntity
}
}