summaryrefslogtreecommitdiff
path: root/jstests/aggregation/bugs/server6190.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/aggregation/bugs/server6190.js')
-rw-r--r--jstests/aggregation/bugs/server6190.js130
1 files changed, 66 insertions, 64 deletions
diff --git a/jstests/aggregation/bugs/server6190.js b/jstests/aggregation/bugs/server6190.js
index caefaeb1b3e..d32a652e74b 100644
--- a/jstests/aggregation/bugs/server6190.js
+++ b/jstests/aggregation/bugs/server6190.js
@@ -5,131 +5,132 @@ load('jstests/aggregation/extras/utils.js');
t = db.jstests_aggregation_server6190;
t.drop();
-t.save( {} );
+t.save({});
-function week( date ) {
- return t.aggregate( { $project:{ a:{ $week:date } } },
- { $match:{ a:{ $type:16 /* Int type expected */ } } } ).toArray()[ 0 ].a;
+function week(date) {
+ return t.aggregate({$project: {a: {$week: date}}},
+ {$match: {a: {$type: 16 /* Int type expected */}}})
+ .toArray()[0]
+ .a;
}
-function assertWeek( expectedWeek, date ) {
- assert.eq( expectedWeek, week( date ) );
+function assertWeek(expectedWeek, date) {
+ assert.eq(expectedWeek, week(date));
}
// Sun Jan 1 1984
-assertWeek( 1, new Date(Date.UTC( 1984, 0, 1 )) );
+assertWeek(1, new Date(Date.UTC(1984, 0, 1)));
// Mon Jan 2 1984
-assertWeek( 1, new Date(Date.UTC( 1984, 0, 2 )) );
+assertWeek(1, new Date(Date.UTC(1984, 0, 2)));
// Sat Jan 7 1984
-assertWeek( 1, new Date(Date.UTC( 1984, 0, 7 )) );
+assertWeek(1, new Date(Date.UTC(1984, 0, 7)));
// Sun Jan 8 1984
-assertWeek( 2, new Date(Date.UTC( 1984, 0, 8 )) );
+assertWeek(2, new Date(Date.UTC(1984, 0, 8)));
// Sat Feb 18 1984
-assertWeek( 7, new Date(Date.UTC( 1984, 1, 18 )) );
+assertWeek(7, new Date(Date.UTC(1984, 1, 18)));
// Sun Feb 19 1984
-assertWeek( 8, new Date(Date.UTC( 1984, 1, 19 )) );
+assertWeek(8, new Date(Date.UTC(1984, 1, 19)));
// Mon Jan 1 2007
-assertWeek( 0, new Date(Date.UTC( 2007, 0, 1 )) );
+assertWeek(0, new Date(Date.UTC(2007, 0, 1)));
// Tue Jan 2 2007
-assertWeek( 0, new Date(Date.UTC( 2007, 0, 2 )) );
+assertWeek(0, new Date(Date.UTC(2007, 0, 2)));
// Sat Jan 6 2007
-assertWeek( 0, new Date(Date.UTC( 2007, 0, 6 )) );
+assertWeek(0, new Date(Date.UTC(2007, 0, 6)));
// Sun Jan 7 2007
-assertWeek( 1, new Date(Date.UTC( 2007, 0, 7 )) );
+assertWeek(1, new Date(Date.UTC(2007, 0, 7)));
// Mon Jan 8 2007
-assertWeek( 1, new Date(Date.UTC( 2007, 0, 8 )) );
+assertWeek(1, new Date(Date.UTC(2007, 0, 8)));
// Sat Jan 13 2007
-assertWeek( 1, new Date(Date.UTC( 2007, 0, 13 )) );
+assertWeek(1, new Date(Date.UTC(2007, 0, 13)));
// Sun Jan 14 2007
-assertWeek( 2, new Date(Date.UTC( 2007, 0, 14 )) );
+assertWeek(2, new Date(Date.UTC(2007, 0, 14)));
// Sat Mar 3 2007
-assertWeek( 8, new Date(Date.UTC( 2007, 2, 3 )) );
+assertWeek(8, new Date(Date.UTC(2007, 2, 3)));
// Sun Mar 4 2007
-assertWeek( 9, new Date(Date.UTC( 2007, 2, 4 )) );
+assertWeek(9, new Date(Date.UTC(2007, 2, 4)));
// Tue Jan 1 2008
-assertWeek( 0, new Date(Date.UTC( 2008, 0, 1 )) );
+assertWeek(0, new Date(Date.UTC(2008, 0, 1)));
// Sat Jan 5 2008
-assertWeek( 0, new Date(Date.UTC( 2008, 0, 5 )) );
+assertWeek(0, new Date(Date.UTC(2008, 0, 5)));
// Sun Jan 6 2008
-assertWeek( 1, new Date(Date.UTC( 2008, 0, 6 )) );
+assertWeek(1, new Date(Date.UTC(2008, 0, 6)));
// Sat Apr 26 2008
-assertWeek( 16, new Date(Date.UTC( 2008, 3, 26 )) );
+assertWeek(16, new Date(Date.UTC(2008, 3, 26)));
// Sun Apr 27 2008
-assertWeek( 17, new Date(Date.UTC( 2008, 3, 27 )) );
+assertWeek(17, new Date(Date.UTC(2008, 3, 27)));
// Wed Jan 1 2003
-assertWeek( 0, new Date(Date.UTC( 2003, 0, 1 )) );
+assertWeek(0, new Date(Date.UTC(2003, 0, 1)));
// Sat Jan 4 2003
-assertWeek( 0, new Date(Date.UTC( 2003, 0, 4 )) );
+assertWeek(0, new Date(Date.UTC(2003, 0, 4)));
// Sun Jan 5 2003
-assertWeek( 1, new Date(Date.UTC( 2003, 0, 5 )) );
+assertWeek(1, new Date(Date.UTC(2003, 0, 5)));
// Sat Dec 27 2003
-assertWeek( 51, new Date(Date.UTC( 2003, 11, 27 )) );
+assertWeek(51, new Date(Date.UTC(2003, 11, 27)));
// Sat Dec 28 2003
-assertWeek( 52, new Date(Date.UTC( 2003, 11, 28 )) );
+assertWeek(52, new Date(Date.UTC(2003, 11, 28)));
// Thu Jan 1 2009
-assertWeek( 0, new Date(Date.UTC( 2009, 0, 1 )) );
+assertWeek(0, new Date(Date.UTC(2009, 0, 1)));
// Sat Jan 3 2009
-assertWeek( 0, new Date(Date.UTC( 2009, 0, 3 )) );
+assertWeek(0, new Date(Date.UTC(2009, 0, 3)));
// Sun Jan 4 2008
-assertWeek( 1, new Date(Date.UTC( 2009, 0, 4 )) );
+assertWeek(1, new Date(Date.UTC(2009, 0, 4)));
// Sat Oct 31 2009
-assertWeek( 43, new Date(Date.UTC( 2009, 9, 31 )) );
+assertWeek(43, new Date(Date.UTC(2009, 9, 31)));
// Sun Nov 1 2008
-assertWeek( 44, new Date(Date.UTC( 2009, 10, 1 )) );
+assertWeek(44, new Date(Date.UTC(2009, 10, 1)));
// Fri Jan 1 2010
-assertWeek( 0, new Date(Date.UTC( 2010, 0, 1 )) );
+assertWeek(0, new Date(Date.UTC(2010, 0, 1)));
// Sat Jan 2 2010
-assertWeek( 0, new Date(Date.UTC( 2010, 0, 2 )) );
+assertWeek(0, new Date(Date.UTC(2010, 0, 2)));
// Sun Jan 3 2010
-assertWeek( 1, new Date(Date.UTC( 2010, 0, 3 )) );
+assertWeek(1, new Date(Date.UTC(2010, 0, 3)));
// Sat Sept 18 2010
-assertWeek( 37, new Date(Date.UTC( 2010, 8, 18 )) );
+assertWeek(37, new Date(Date.UTC(2010, 8, 18)));
// Sun Sept 19 2010
-assertWeek( 38, new Date(Date.UTC( 2010, 8, 19 )) );
+assertWeek(38, new Date(Date.UTC(2010, 8, 19)));
// Sat Jan 1 2011
-assertWeek( 0, new Date(Date.UTC( 2011, 0, 1 )) );
+assertWeek(0, new Date(Date.UTC(2011, 0, 1)));
// Sun Jan 2 2011
-assertWeek( 1, new Date(Date.UTC( 2011, 0, 2 )) );
+assertWeek(1, new Date(Date.UTC(2011, 0, 2)));
// Sat Aug 20 2011
-assertWeek( 33, new Date(Date.UTC( 2011, 7, 20 )) );
+assertWeek(33, new Date(Date.UTC(2011, 7, 20)));
// Sun Aug 21 2011
-assertWeek( 34, new Date(Date.UTC( 2011, 7, 21 )) );
-
+assertWeek(34, new Date(Date.UTC(2011, 7, 21)));
// Leap year tests.
// Sat Feb 27 2016
-assertWeek( 8, new Date(Date.UTC( 2016, 1, 27 )) );
+assertWeek(8, new Date(Date.UTC(2016, 1, 27)));
// Sun Feb 28 2016
-assertWeek( 9, new Date(Date.UTC( 2016, 1, 28 )) );
+assertWeek(9, new Date(Date.UTC(2016, 1, 28)));
// Mon Feb 29 2016
-assertWeek( 9, new Date(Date.UTC( 2016, 1, 29 )) );
+assertWeek(9, new Date(Date.UTC(2016, 1, 29)));
// Tue Mar 1 2016
-assertWeek( 9, new Date(Date.UTC( 2016, 2, 1 )) );
+assertWeek(9, new Date(Date.UTC(2016, 2, 1)));
// Sat Feb 28 2032
-assertWeek( 8, new Date(Date.UTC( 2032, 1, 28 )) );
+assertWeek(8, new Date(Date.UTC(2032, 1, 28)));
// Sun Feb 29 2032
-assertWeek( 9, new Date(Date.UTC( 2032, 1, 29 )) );
+assertWeek(9, new Date(Date.UTC(2032, 1, 29)));
// Mon Mar 1 2032
-assertWeek( 9, new Date(Date.UTC( 2032, 2, 1 )) );
+assertWeek(9, new Date(Date.UTC(2032, 2, 1)));
// Fri Feb 28 2020
-assertWeek( 8, new Date(Date.UTC( 2020, 1, 28 )) );
+assertWeek(8, new Date(Date.UTC(2020, 1, 28)));
// Sat Feb 29 2020
-assertWeek( 8, new Date(Date.UTC( 2020, 1, 29 )) );
+assertWeek(8, new Date(Date.UTC(2020, 1, 29)));
// Sun Mar 1 2020
-assertWeek( 9, new Date(Date.UTC( 2020, 2, 1 )) );
+assertWeek(9, new Date(Date.UTC(2020, 2, 1)));
// Timestamp argument.
-assertWeek( 1, new Timestamp( new Date(Date.UTC( 1984, 0, 1 )).getTime() / 1000, 0 ) );
-assertWeek( 1, new Timestamp( new Date(Date.UTC( 1984, 0, 1 )).getTime() / 1000, 1000000000 ) );
+assertWeek(1, new Timestamp(new Date(Date.UTC(1984, 0, 1)).getTime() / 1000, 0));
+assertWeek(1, new Timestamp(new Date(Date.UTC(1984, 0, 1)).getTime() / 1000, 1000000000));
// Numeric argument not allowed.
assertErrorCode(t, {$project: {a: {$week: 5}}}, 16006);
@@ -138,15 +139,16 @@ assertErrorCode(t, {$project: {a: {$week: 5}}}, 16006);
assertErrorCode(t, {$project: {a: {$week: 'foo'}}}, 16006);
// Array argument format.
-assertWeek( 8, [ new Date(Date.UTC( 2016, 1, 27 )) ] );
+assertWeek(8, [new Date(Date.UTC(2016, 1, 27))]);
// Wrong number of arguments.
assertErrorCode(t, {$project: {a: {$week: []}}}, 16020);
-assertErrorCode(t, {$project: {a: {$week: [new Date(Date.UTC(2020, 1, 28)),
- new Date(Date.UTC(2020, 1, 29))]}}},
- 16020);
+assertErrorCode(
+ t,
+ {$project: {a: {$week: [new Date(Date.UTC(2020, 1, 28)), new Date(Date.UTC(2020, 1, 29))]}}},
+ 16020);
// From a field path expression.
t.remove({});
-t.save( { a:new Date(Date.UTC( 2020, 2, 1 )) } );
-assertWeek( 9, '$a' );
+t.save({a: new Date(Date.UTC(2020, 2, 1))});
+assertWeek(9, '$a');