@@ -13,7 +13,7 @@ describe('assert.hasAttribute', function () {
13
13
return assertionTest ( {
14
14
args : [ '.test_element' , 'data-test' , 'Test message' ] ,
15
15
commandResult : {
16
- value : [ { name : 'data-track' } , { name : 'data-test' } ]
16
+ value : 'data-track'
17
17
} ,
18
18
assertMessage : true ,
19
19
assertion ( { instance, failure} ) {
@@ -28,16 +28,16 @@ describe('assert.hasAttribute', function () {
28
28
return assertionTest ( {
29
29
args : [ '.test_element' , 'data-test' ] ,
30
30
commandResult : {
31
- value : [ { name : 'data-track' } ]
31
+ value : 'data-track'
32
32
} ,
33
33
negate : true ,
34
34
assertion ( { instance, queueOpts, message} ) {
35
35
assert . strictEqual ( typeof err , 'undefined' ) ;
36
36
assert . strictEqual ( queueOpts . negate , true ) ;
37
37
38
38
assert . strictEqual ( instance . hasFailure ( ) , false ) ;
39
- assert . deepStrictEqual ( instance . getValue ( ) , [ 'data-track' ] ) ;
40
- assert . deepStrictEqual ( instance . getActual ( ) , [ 'data-track' ] ) ;
39
+ assert . deepStrictEqual ( instance . getValue ( ) , 'data-track' ) ;
40
+ assert . deepStrictEqual ( instance . getActual ( ) , 'data-track' ) ;
41
41
assert . strictEqual ( instance . message , 'Testing if element <.test_element> doesn\'t have attribute \'data-test\'' ) ;
42
42
assert . ok ( message . startsWith ( 'Testing if element <.test_element> doesn\'t have attribute \'data-test\'' ) , message ) ;
43
43
}
@@ -48,15 +48,15 @@ describe('assert.hasAttribute', function () {
48
48
return assertionTest ( {
49
49
args : [ '.test_element' , 'data-test' ] ,
50
50
commandResult : {
51
- value : [ { name : 'data-test' } ]
51
+ value : 'data-test'
52
52
} ,
53
53
negate : true ,
54
54
assertError : true ,
55
55
assertion ( { instance, queueOpts, err} ) {
56
56
assert . strictEqual ( queueOpts . negate , true ) ;
57
57
assert . strictEqual ( instance . hasFailure ( ) , false ) ;
58
- assert . deepStrictEqual ( instance . getValue ( ) , [ 'data-test' ] ) ;
59
- assert . deepStrictEqual ( instance . getActual ( ) , [ 'data-test' ] ) ;
58
+ assert . deepStrictEqual ( instance . getValue ( ) , 'data-test' ) ;
59
+ assert . deepStrictEqual ( instance . getActual ( ) , 'data-test' ) ;
60
60
assert . strictEqual ( err . message , `Testing if element <.test_element> doesn't have attribute 'data-test' in 5ms - expected "has not data-test" but got: "data-test" (${ instance . elapsedTime } ms)` ) ;
61
61
}
62
62
} ) ;
@@ -66,13 +66,13 @@ describe('assert.hasAttribute', function () {
66
66
return assertionTest ( {
67
67
args : [ { selector : '.test_element' } , 'data-test' ] ,
68
68
commandResult : {
69
- value : [ { name : 'data-test' } ]
69
+ value : 'data-test'
70
70
} ,
71
71
assertResult : true ,
72
72
assertion ( { instance, failure, message, err} ) {
73
73
assert . strictEqual ( err , undefined ) ;
74
74
assert . deepStrictEqual ( instance . options , { elementSelector : true } ) ;
75
- assert . deepStrictEqual ( instance . getActual ( ) , [ 'data-test' ] ) ;
75
+ assert . deepStrictEqual ( instance . getActual ( ) , 'data-test' ) ;
76
76
assert . strictEqual ( instance . hasFailure ( ) , false ) ;
77
77
assert . ok ( message . startsWith ( 'Testing if element <.test_element> has attribute \'data-test\'' ) , message ) ;
78
78
assert . strictEqual ( failure , false ) ;
@@ -84,33 +84,13 @@ describe('assert.hasAttribute', function () {
84
84
return assertionTest ( {
85
85
args : [ '.test_element' , 'data-test' , 'Test message' ] ,
86
86
commandResult : {
87
- value : [ { name : 'not_expected' } ]
87
+ value : null
88
88
} ,
89
89
assertError : true ,
90
90
assertResult : true ,
91
91
assertion ( { instance, failure} ) {
92
- assert . deepStrictEqual ( instance . getActual ( ) , [ 'not_expected' ] ) ;
93
- assert . strictEqual ( failure , 'Expected "has data-test" but got: "not_expected"' ) ;
94
- }
95
- } ) ;
96
- } ) ;
97
-
98
- it ( 'hasAttribute assertion - element not found' , function ( ) {
99
- return assertionTest ( {
100
- args : [ '.test_element' , 'data-test' , 'Test attribute %s from element "%s" == %s' ] ,
101
- commandResult : {
102
- status : - 1 ,
103
- value : [ ]
104
- } ,
105
- assertError : true ,
106
- assertFailure : true ,
107
- assertResult : true ,
108
- assertion ( { instance, failure, err} ) {
109
- assert . strictEqual ( instance . getActual ( ) , 'element could not be located' ) ;
110
- assert . strictEqual ( instance . expected ( ) , 'has data-test' ) ;
111
- assert . strictEqual ( instance . getValue ( ) , null ) ;
112
- assert . strictEqual ( failure , 'Expected "has data-test" but got: "element could not be located"' ) ;
113
- assert . strictEqual ( err . message , `Test attribute <.test_element> from element "'data-test'" == %s in 5ms - expected "has data-test" but got: "element could not be located" (${ instance . elapsedTime } ms)` ) ;
92
+ assert . deepStrictEqual ( instance . getActual ( ) , null ) ;
93
+ assert . strictEqual ( failure , 'Expected "has data-test" but got: "null"' ) ;
114
94
}
115
95
} ) ;
116
96
} ) ;
@@ -132,4 +112,17 @@ describe('assert.hasAttribute', function () {
132
112
}
133
113
} ) ;
134
114
} ) ;
115
+
116
+ it ( 'hasAttribute assertion failed for wrong parameters' , function ( ) {
117
+ return assertionTest ( {
118
+ args : [ '.test_element' , [ 'data-test' , 'dummy' ] , 'Test message' ] ,
119
+ commandResult : {
120
+ value : 'data-track'
121
+ } ,
122
+ assertMessage : true
123
+ } ) . catch ( ( err ) => {
124
+ assert . ok ( err instanceof Error ) ;
125
+ assert . strictEqual ( err . message , 'Error while running "assert.hasAttribute" command: Expected attribute must be a string' ) ;
126
+ } ) ;
127
+ } ) ;
135
128
} ) ;
0 commit comments