mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-05-08 14:48:01 +00:00
753907a184
* Timestamp: `set_timestamp` sets `DidUpdate` There exists the `set_timestamp` in the Timestamp pallet for setting the current timestamp. The problem is that it doesn't set `DidUpdate`. This results in `on_finalize` panicking. There is no real reason why the function doesn't also set `DidUpdate`. * Update frame/timestamp/src/lib.rs Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> * Fix Babe tests Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
52 lines
1.5 KiB
Rust
52 lines
1.5 KiB
Rust
// This file is part of Substrate.
|
|
|
|
// Copyright (C) 2020-2022 Parity Technologies (UK) Ltd.
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
//! Tests for the Timestamp module.
|
|
|
|
use crate::mock::*;
|
|
use frame_support::assert_ok;
|
|
|
|
#[test]
|
|
fn timestamp_works() {
|
|
new_test_ext().execute_with(|| {
|
|
crate::Now::<Test>::put(46);
|
|
assert_ok!(Timestamp::set(Origin::none(), 69));
|
|
assert_eq!(Timestamp::now(), 69);
|
|
assert_eq!(Some(69), get_captured_moment());
|
|
});
|
|
}
|
|
|
|
#[test]
|
|
#[should_panic(expected = "Timestamp must be updated only once in the block")]
|
|
fn double_timestamp_should_fail() {
|
|
new_test_ext().execute_with(|| {
|
|
Timestamp::set_timestamp(42);
|
|
assert_ok!(Timestamp::set(Origin::none(), 69));
|
|
});
|
|
}
|
|
|
|
#[test]
|
|
#[should_panic(
|
|
expected = "Timestamp must increment by at least <MinimumPeriod> between sequential blocks"
|
|
)]
|
|
fn block_period_minimum_enforced() {
|
|
new_test_ext().execute_with(|| {
|
|
crate::Now::<Test>::put(44);
|
|
let _ = Timestamp::set(Origin::none(), 46);
|
|
});
|
|
}
|