Skip to content

Commit

Permalink
Feat: added flodash in range
Browse files Browse the repository at this point in the history
Closes #55
  • Loading branch information
Akalanka47000 committed Oct 15, 2023
1 parent a8cf701 commit 4455011
Show file tree
Hide file tree
Showing 5 changed files with 81 additions and 32 deletions.
26 changes: 13 additions & 13 deletions packages/flodash/example/pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@ packages:
dependency: transitive
description:
name: collection
sha256: f092b211a4319e98e5ff58223576de6c2803db36221657b46c82574721240687
sha256: "4a07be6cb69c84d677a6c3096fcf960cc3285a8330b4603e0d463d15d9bd934c"
url: "https://pub.dev"
source: hosted
version: "1.17.2"
version: "1.17.1"
cupertino_icons:
dependency: "direct main"
description:
Expand All @@ -37,14 +37,22 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
js:
dependency: transitive
description:
name: js
sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3
url: "https://pub.dev"
source: hosted
version: "0.6.7"
material_color_utilities:
dependency: transitive
description:
name: material_color_utilities
sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41"
sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724
url: "https://pub.dev"
source: hosted
version: "0.5.0"
version: "0.2.0"
meta:
dependency: transitive
description:
Expand All @@ -66,13 +74,5 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.1.4"
web:
dependency: transitive
description:
name: web
sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10
url: "https://pub.dev"
source: hosted
version: "0.1.4-beta"
sdks:
dart: ">=3.1.0-185.0.dev <3.7.0"
dart: ">=3.0.0-0 <3.7.0"
23 changes: 23 additions & 0 deletions packages/flodash/lib/modules/number/in_range.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
/// Checks if n is between start and up to, but not including, end. If end is not specified, it's set to start with start then set to 0. If start is greater than end the params are swapped to support negative ranges.
///
/// Arguments
///
/// - number (num): The number to check.
/// - [start = 0] (num): The start of the range.
/// - end (num): The end of the range.
///
/// Returns
///
/// - (bool): Returns true if number is in the range, else false.
dynamic inRange(num number, num? start, [num? end]) {
if (end == null) {
end = start;
start = 0;
}
if (start! > end!) {
var temp = start;
start = end;
end = temp;
}
return number >= start && number < end;
}
1 change: 1 addition & 0 deletions packages/flodash/lib/modules/number/main.dart
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
export 'clamp.dart';
export 'in_range.dart';
export 'random.dart';
38 changes: 19 additions & 19 deletions packages/flodash/pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,10 @@ packages:
dependency: transitive
description:
name: collection
sha256: f092b211a4319e98e5ff58223576de6c2803db36221657b46c82574721240687
sha256: "4a07be6cb69c84d677a6c3096fcf960cc3285a8330b4603e0d463d15d9bd934c"
url: "https://pub.dev"
source: hosted
version: "1.17.2"
version: "1.17.1"
fake_async:
dependency: transitive
description:
Expand All @@ -59,22 +59,30 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
js:
dependency: transitive
description:
name: js
sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3
url: "https://pub.dev"
source: hosted
version: "0.6.7"
matcher:
dependency: transitive
description:
name: matcher
sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e"
sha256: "6501fbd55da300384b768785b83e5ce66991266cec21af89ab9ae7f5ce1c4cbb"
url: "https://pub.dev"
source: hosted
version: "0.12.16"
version: "0.12.15"
material_color_utilities:
dependency: transitive
description:
name: material_color_utilities
sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41"
sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724
url: "https://pub.dev"
source: hosted
version: "0.5.0"
version: "0.2.0"
meta:
dependency: transitive
description:
Expand All @@ -100,10 +108,10 @@ packages:
dependency: transitive
description:
name: source_span
sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c"
sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250
url: "https://pub.dev"
source: hosted
version: "1.10.0"
version: "1.9.1"
stack_trace:
dependency: transitive
description:
Expand Down Expand Up @@ -140,10 +148,10 @@ packages:
dependency: transitive
description:
name: test_api
sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8"
sha256: eb6ac1540b26de412b3403a163d919ba86f6a973fe6cc50ae3541b80092fdcfb
url: "https://pub.dev"
source: hosted
version: "0.6.0"
version: "0.5.1"
vector_math:
dependency: transitive
description:
Expand All @@ -152,13 +160,5 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.1.4"
web:
dependency: transitive
description:
name: web
sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10
url: "https://pub.dev"
source: hosted
version: "0.1.4-beta"
sdks:
dart: ">=3.1.0-185.0.dev <3.7.0"
dart: ">=3.0.0-0 <3.7.0"
25 changes: 25 additions & 0 deletions packages/flodash/test/modules/number/in_range_test.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import 'package:flodash/flodash.dart' as flodash;

import 'package:flutter_test/flutter_test.dart';

main() {
test('with both start and end', () {
expect(flodash.inRange(3, 2, 4), equals(true));
});
test('end is greater than number', () {
expect(flodash.inRange(4, 8), equals(true));
});
test('end is less than number', () {
expect(flodash.inRange(4, 2), equals(false));
});
test('end is same as number', () {
expect(flodash.inRange(2, 2), equals(false));
});
test('with floating point numbers', () {
expect(flodash.inRange(1.2, 2), equals(true));
expect(flodash.inRange(5.2, 4), equals(false));
});
test('end is less than start', () {
expect(flodash.inRange(-3, -2, -6), equals(true));
});
}

0 comments on commit 4455011

Please sign in to comment.