forked from fsprojects/fantomas
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBaseConstructorTests.fs
68 lines (61 loc) · 1.98 KB
/
BaseConstructorTests.fs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
module Fantomas.Core.Tests.BaseConstructorTests
open NUnit.Framework
open FsUnit
open Fantomas.Core.Tests.TestHelper
[<Test>]
let ``multiple base constructors in record, 2111`` () =
formatSourceString
false
"""
type UnhandledWebException =
inherit Exception
new(status: WebExceptionStatus, innerException: Exception) =
{ inherit Exception(SPrintF1
"Backend not prepared for this WebException with Status[%i]"
(int status),
innerException) }
new(info: SerializationInfo, context: StreamingContext) =
{ inherit Exception(info, context) }
"""
{ config with MaxLineLength = 100 }
|> prepend newline
|> should
equal
"""
type UnhandledWebException =
inherit Exception
new(status: WebExceptionStatus, innerException: Exception) =
{ inherit
Exception(
SPrintF1 "Backend not prepared for this WebException with Status[%i]" (int status),
innerException
) }
new(info: SerializationInfo, context: StreamingContext) = { inherit Exception(info, context) }
"""
[<Test>]
let ``single multiline base constructor, 2335`` () =
formatSourceString
false
"""
type FieldNotFoundException<'T>(obj:'T, field:string, specLink:string) =
inherit SwaggerSchemaParseException(
sprintf "Object MUST contain field `%s` (See %s for more details).\nObject:%A"
field specLink obj)
"""
{ config with
SpaceBeforeClassConstructor = true
MaxLineLength = 90 }
|> prepend newline
|> should
equal
"""
type FieldNotFoundException<'T> (obj: 'T, field: string, specLink: string) =
inherit
SwaggerSchemaParseException (
sprintf
"Object MUST contain field `%s` (See %s for more details).\nObject:%A"
field
specLink
obj
)
"""