Skip to content

Commit 61a0d9a

Browse files
author
rdelhommer
committed
add units using prefix method instead. also added other commonly used prefixes
1 parent cfec58b commit 61a0d9a

File tree

6 files changed

+193
-33
lines changed

6 files changed

+193
-33
lines changed

UnitsNet.Tests/CustomCode/FlowTests.cs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,21 @@ public class FlowTests : FlowTestsBase
3030
protected override double MillionUsGallonsPerDayInOneCubicMeterPerSecond => 22.824465227;
3131

3232
protected override double CubicMetersPerSecondInOneCubicMeterPerSecond => 1;
33-
33+
3434
protected override double UsGallonsPerMinuteInOneCubicMeterPerSecond => 15850.323141489;
3535

3636
protected override double LitersPerMinuteInOneCubicMeterPerSecond => 60000.00000;
3737

38-
protected override double MicroLitersPerMinuteInOneCubicMeterPerSecond => 60000000000.00000;
38+
protected override double NanolitersPerMinuteInOneCubicMeterPerSecond => 60000000000000.00000;
39+
40+
protected override double MicrolitersPerMinuteInOneCubicMeterPerSecond => 60000000000.00000;
41+
42+
protected override double MillilitersPerMinuteInOneCubicMeterPerSecond => 60000000.00000;
43+
44+
protected override double CentilitersPerMinuteInOneCubicMeterPerSecond => 6000000.00000;
45+
46+
protected override double DecilitersPerMinuteInOneCubicMeterPerSecond => 600000.00000;
47+
48+
protected override double KilolitersPerMinuteInOneCubicMeterPerSecond => 60.00000;
3949
}
4050
}

UnitsNet.Tests/GeneratedCode/FlowTestsBase.g.cs

Lines changed: 36 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,72 +36,102 @@ namespace UnitsNet.Tests
3636
// ReSharper disable once PartialTypeWithSinglePart
3737
public abstract partial class FlowTestsBase
3838
{
39+
protected abstract double CentilitersPerMinuteInOneCubicMeterPerSecond { get; }
3940
protected abstract double CubicFeetPerSecondInOneCubicMeterPerSecond { get; }
4041
protected abstract double CubicMetersPerHourInOneCubicMeterPerSecond { get; }
4142
protected abstract double CubicMetersPerSecondInOneCubicMeterPerSecond { get; }
43+
protected abstract double DecilitersPerMinuteInOneCubicMeterPerSecond { get; }
44+
protected abstract double KilolitersPerMinuteInOneCubicMeterPerSecond { get; }
4245
protected abstract double LitersPerMinuteInOneCubicMeterPerSecond { get; }
43-
protected abstract double MicroLitersPerMinuteInOneCubicMeterPerSecond { get; }
46+
protected abstract double MicrolitersPerMinuteInOneCubicMeterPerSecond { get; }
47+
protected abstract double MillilitersPerMinuteInOneCubicMeterPerSecond { get; }
4448
protected abstract double MillionUsGallonsPerDayInOneCubicMeterPerSecond { get; }
49+
protected abstract double NanolitersPerMinuteInOneCubicMeterPerSecond { get; }
4550
protected abstract double UsGallonsPerMinuteInOneCubicMeterPerSecond { get; }
4651

4752
// ReSharper disable VirtualMemberNeverOverriden.Global
53+
protected virtual double CentilitersPerMinuteTolerance { get { return 1e-5; } }
4854
protected virtual double CubicFeetPerSecondTolerance { get { return 1e-5; } }
4955
protected virtual double CubicMetersPerHourTolerance { get { return 1e-5; } }
5056
protected virtual double CubicMetersPerSecondTolerance { get { return 1e-5; } }
57+
protected virtual double DecilitersPerMinuteTolerance { get { return 1e-5; } }
58+
protected virtual double KilolitersPerMinuteTolerance { get { return 1e-5; } }
5159
protected virtual double LitersPerMinuteTolerance { get { return 1e-5; } }
52-
protected virtual double MicroLitersPerMinuteTolerance { get { return 1e-5; } }
60+
protected virtual double MicrolitersPerMinuteTolerance { get { return 1e-5; } }
61+
protected virtual double MillilitersPerMinuteTolerance { get { return 1e-5; } }
5362
protected virtual double MillionUsGallonsPerDayTolerance { get { return 1e-5; } }
63+
protected virtual double NanolitersPerMinuteTolerance { get { return 1e-5; } }
5464
protected virtual double UsGallonsPerMinuteTolerance { get { return 1e-5; } }
5565
// ReSharper restore VirtualMemberNeverOverriden.Global
5666

5767
[Test]
5868
public void CubicMeterPerSecondToFlowUnits()
5969
{
6070
Flow cubicmeterpersecond = Flow.FromCubicMetersPerSecond(1);
71+
Assert.AreEqual(CentilitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.CentilitersPerMinute, CentilitersPerMinuteTolerance);
6172
Assert.AreEqual(CubicFeetPerSecondInOneCubicMeterPerSecond, cubicmeterpersecond.CubicFeetPerSecond, CubicFeetPerSecondTolerance);
6273
Assert.AreEqual(CubicMetersPerHourInOneCubicMeterPerSecond, cubicmeterpersecond.CubicMetersPerHour, CubicMetersPerHourTolerance);
6374
Assert.AreEqual(CubicMetersPerSecondInOneCubicMeterPerSecond, cubicmeterpersecond.CubicMetersPerSecond, CubicMetersPerSecondTolerance);
75+
Assert.AreEqual(DecilitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.DecilitersPerMinute, DecilitersPerMinuteTolerance);
76+
Assert.AreEqual(KilolitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.KilolitersPerMinute, KilolitersPerMinuteTolerance);
6477
Assert.AreEqual(LitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.LitersPerMinute, LitersPerMinuteTolerance);
65-
Assert.AreEqual(MicroLitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.MicroLitersPerMinute, MicroLitersPerMinuteTolerance);
78+
Assert.AreEqual(MicrolitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.MicrolitersPerMinute, MicrolitersPerMinuteTolerance);
79+
Assert.AreEqual(MillilitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.MillilitersPerMinute, MillilitersPerMinuteTolerance);
6680
Assert.AreEqual(MillionUsGallonsPerDayInOneCubicMeterPerSecond, cubicmeterpersecond.MillionUsGallonsPerDay, MillionUsGallonsPerDayTolerance);
81+
Assert.AreEqual(NanolitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.NanolitersPerMinute, NanolitersPerMinuteTolerance);
6782
Assert.AreEqual(UsGallonsPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.UsGallonsPerMinute, UsGallonsPerMinuteTolerance);
6883
}
6984

7085
[Test]
7186
public void FromValueAndUnit()
7287
{
88+
Assert.AreEqual(1, Flow.From(1, FlowUnit.CentilitersPerMinute).CentilitersPerMinute, CentilitersPerMinuteTolerance);
7389
Assert.AreEqual(1, Flow.From(1, FlowUnit.CubicFootPerSecond).CubicFeetPerSecond, CubicFeetPerSecondTolerance);
7490
Assert.AreEqual(1, Flow.From(1, FlowUnit.CubicMeterPerHour).CubicMetersPerHour, CubicMetersPerHourTolerance);
7591
Assert.AreEqual(1, Flow.From(1, FlowUnit.CubicMeterPerSecond).CubicMetersPerSecond, CubicMetersPerSecondTolerance);
92+
Assert.AreEqual(1, Flow.From(1, FlowUnit.DecilitersPerMinute).DecilitersPerMinute, DecilitersPerMinuteTolerance);
93+
Assert.AreEqual(1, Flow.From(1, FlowUnit.KilolitersPerMinute).KilolitersPerMinute, KilolitersPerMinuteTolerance);
7694
Assert.AreEqual(1, Flow.From(1, FlowUnit.LitersPerMinute).LitersPerMinute, LitersPerMinuteTolerance);
77-
Assert.AreEqual(1, Flow.From(1, FlowUnit.MicroLitersPerMinute).MicroLitersPerMinute, MicroLitersPerMinuteTolerance);
95+
Assert.AreEqual(1, Flow.From(1, FlowUnit.MicrolitersPerMinute).MicrolitersPerMinute, MicrolitersPerMinuteTolerance);
96+
Assert.AreEqual(1, Flow.From(1, FlowUnit.MillilitersPerMinute).MillilitersPerMinute, MillilitersPerMinuteTolerance);
7897
Assert.AreEqual(1, Flow.From(1, FlowUnit.MillionUsGallonsPerDay).MillionUsGallonsPerDay, MillionUsGallonsPerDayTolerance);
98+
Assert.AreEqual(1, Flow.From(1, FlowUnit.NanolitersPerMinute).NanolitersPerMinute, NanolitersPerMinuteTolerance);
7999
Assert.AreEqual(1, Flow.From(1, FlowUnit.UsGallonsPerMinute).UsGallonsPerMinute, UsGallonsPerMinuteTolerance);
80100
}
81101

82102
[Test]
83103
public void As()
84104
{
85105
var cubicmeterpersecond = Flow.FromCubicMetersPerSecond(1);
106+
Assert.AreEqual(CentilitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.CentilitersPerMinute), CentilitersPerMinuteTolerance);
86107
Assert.AreEqual(CubicFeetPerSecondInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.CubicFootPerSecond), CubicFeetPerSecondTolerance);
87108
Assert.AreEqual(CubicMetersPerHourInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.CubicMeterPerHour), CubicMetersPerHourTolerance);
88109
Assert.AreEqual(CubicMetersPerSecondInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.CubicMeterPerSecond), CubicMetersPerSecondTolerance);
110+
Assert.AreEqual(DecilitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.DecilitersPerMinute), DecilitersPerMinuteTolerance);
111+
Assert.AreEqual(KilolitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.KilolitersPerMinute), KilolitersPerMinuteTolerance);
89112
Assert.AreEqual(LitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.LitersPerMinute), LitersPerMinuteTolerance);
90-
Assert.AreEqual(MicroLitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.MicroLitersPerMinute), MicroLitersPerMinuteTolerance);
113+
Assert.AreEqual(MicrolitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.MicrolitersPerMinute), MicrolitersPerMinuteTolerance);
114+
Assert.AreEqual(MillilitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.MillilitersPerMinute), MillilitersPerMinuteTolerance);
91115
Assert.AreEqual(MillionUsGallonsPerDayInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.MillionUsGallonsPerDay), MillionUsGallonsPerDayTolerance);
116+
Assert.AreEqual(NanolitersPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.NanolitersPerMinute), NanolitersPerMinuteTolerance);
92117
Assert.AreEqual(UsGallonsPerMinuteInOneCubicMeterPerSecond, cubicmeterpersecond.As(FlowUnit.UsGallonsPerMinute), UsGallonsPerMinuteTolerance);
93118
}
94119

95120
[Test]
96121
public void ConversionRoundTrip()
97122
{
98123
Flow cubicmeterpersecond = Flow.FromCubicMetersPerSecond(1);
124+
Assert.AreEqual(1, Flow.FromCentilitersPerMinute(cubicmeterpersecond.CentilitersPerMinute).CubicMetersPerSecond, CentilitersPerMinuteTolerance);
99125
Assert.AreEqual(1, Flow.FromCubicFeetPerSecond(cubicmeterpersecond.CubicFeetPerSecond).CubicMetersPerSecond, CubicFeetPerSecondTolerance);
100126
Assert.AreEqual(1, Flow.FromCubicMetersPerHour(cubicmeterpersecond.CubicMetersPerHour).CubicMetersPerSecond, CubicMetersPerHourTolerance);
101127
Assert.AreEqual(1, Flow.FromCubicMetersPerSecond(cubicmeterpersecond.CubicMetersPerSecond).CubicMetersPerSecond, CubicMetersPerSecondTolerance);
128+
Assert.AreEqual(1, Flow.FromDecilitersPerMinute(cubicmeterpersecond.DecilitersPerMinute).CubicMetersPerSecond, DecilitersPerMinuteTolerance);
129+
Assert.AreEqual(1, Flow.FromKilolitersPerMinute(cubicmeterpersecond.KilolitersPerMinute).CubicMetersPerSecond, KilolitersPerMinuteTolerance);
102130
Assert.AreEqual(1, Flow.FromLitersPerMinute(cubicmeterpersecond.LitersPerMinute).CubicMetersPerSecond, LitersPerMinuteTolerance);
103-
Assert.AreEqual(1, Flow.FromMicroLitersPerMinute(cubicmeterpersecond.MicroLitersPerMinute).CubicMetersPerSecond, MicroLitersPerMinuteTolerance);
131+
Assert.AreEqual(1, Flow.FromMicrolitersPerMinute(cubicmeterpersecond.MicrolitersPerMinute).CubicMetersPerSecond, MicrolitersPerMinuteTolerance);
132+
Assert.AreEqual(1, Flow.FromMillilitersPerMinute(cubicmeterpersecond.MillilitersPerMinute).CubicMetersPerSecond, MillilitersPerMinuteTolerance);
104133
Assert.AreEqual(1, Flow.FromMillionUsGallonsPerDay(cubicmeterpersecond.MillionUsGallonsPerDay).CubicMetersPerSecond, MillionUsGallonsPerDayTolerance);
134+
Assert.AreEqual(1, Flow.FromNanolitersPerMinute(cubicmeterpersecond.NanolitersPerMinute).CubicMetersPerSecond, NanolitersPerMinuteTolerance);
105135
Assert.AreEqual(1, Flow.FromUsGallonsPerMinute(cubicmeterpersecond.UsGallonsPerMinute).CubicMetersPerSecond, UsGallonsPerMinuteTolerance);
106136
}
107137

UnitsNet/GeneratedCode/Enums/FlowUnit.g.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,17 @@ namespace UnitsNet.Units
2525
public enum FlowUnit
2626
{
2727
Undefined = 0,
28+
CentilitersPerMinute,
2829
CubicFootPerSecond,
2930
CubicMeterPerHour,
3031
CubicMeterPerSecond,
32+
DecilitersPerMinute,
33+
KilolitersPerMinute,
3134
LitersPerMinute,
32-
MicroLitersPerMinute,
35+
MicrolitersPerMinute,
36+
MillilitersPerMinute,
3337
MillionUsGallonsPerDay,
38+
NanolitersPerMinute,
3439
UsGallonsPerMinute,
3540
}
3641
}

0 commit comments

Comments
 (0)