Skip to content

Assert.IsNot

Name - Description Default Type
<input> The input can be of any type. Any
<output> The output will be the input (passthrough). Any
Value The value to test against for equality. None Any
Break If we should trigger a debug breakpoint on failure. false Bool

This assertion is used to check whether the input is different from a given value.

Details

In this shard it's the inequality that's asserted. This means the assertion is considered successful if input to this shard does not match the :Value parameter of this shard.

The rest of behaviour of this shard (including the impact of the value of the :Break parameter) is identical to Assert.Is.

Just like Assert.Is, this shard too can be used for writing (inline) unit test cases.

Examples

1
2
3
4
5
6
7
8
;; :Break = `true`, assertion true
;; => log no errors and don't abort program
8
(Assert.IsNot
 ;:Value
 16
 ;:Break
 true)

 

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
;; :Break = `true`, assertion false
;; => abort the program
8
(Maybe
 (Assert.IsNot
  ;:Value
  8
  ;:Break
  ;; uncomment next line to abort program on run
  ;true
  ))
[error] Failed assertion IsNot, input: 8 not expected: 8
[error] Shard activation error, failed shard: Assert.IsNot, error: Assert failed - IsNot, line: 0, column: 0
[warning] Maybe shard Ignored an error: Assert failed - IsNot

 

1
2
3
4
5
6
7
8
;; :Break = `false`, assertion true
;; => log no errors and don't abort program
8
(Assert.IsNot
 ;:Value
 16
 ;:Break
 false)

 

1
2
3
4
5
6
7
8
9
;; :Break = `false`, assertion false
;; => log assertion error but don't abort program
8
(Maybe
 (Assert.IsNot
  ;:Value
  8
  ;:Break
  false))
[error] Failed assertion IsNot, input: 8 not expected: 8
[error] Shard activation error, failed shard: Assert.IsNot, error: Assert failed - IsNot, line: 0, column: 0
[warning] Maybe shard Ignored an error: Assert failed - IsNot