@@ -3006,3 +3006,248 @@ def test_single_area_yearly(self):
30063006 ),
30073007 },
30083008 )
3009+
3010+ def test_prices_not_available (self ):
3011+ with vcr .use_cassette ("prices_not_available.yaml" ):
3012+ elspot = Prices ()
3013+ prices = elspot .fetch (elspot .HOURLY , end_date = "2024-10-17" , areas = ["FI" ])
3014+ self .assertIsNone (prices )
3015+
3016+ def test_different_currency (self ):
3017+ with vcr .use_cassette ("different_currency.yaml" ):
3018+ elspot = Prices (currency = "SEK" )
3019+ prices = elspot .fetch (elspot .HOURLY , end_date = "2024-10-15" , areas = ["SE1" ])
3020+ # pprint(prices)
3021+ self .assertEqual (
3022+ prices ,
3023+ {
3024+ "areas" : {
3025+ "SE1" : {
3026+ "values" : [
3027+ {
3028+ "end" : datetime .datetime (
3029+ 2024 , 10 , 14 , 23 , 0 , tzinfo = utc
3030+ ),
3031+ "start" : datetime .datetime (
3032+ 2024 , 10 , 14 , 22 , 0 , tzinfo = utc
3033+ ),
3034+ "value" : 95.81 ,
3035+ },
3036+ {
3037+ "end" : datetime .datetime (
3038+ 2024 , 10 , 15 , 0 , 0 , tzinfo = utc
3039+ ),
3040+ "start" : datetime .datetime (
3041+ 2024 , 10 , 14 , 23 , 0 , tzinfo = utc
3042+ ),
3043+ "value" : 75.33 ,
3044+ },
3045+ {
3046+ "end" : datetime .datetime (
3047+ 2024 , 10 , 15 , 1 , 0 , tzinfo = utc
3048+ ),
3049+ "start" : datetime .datetime (
3050+ 2024 , 10 , 15 , 0 , 0 , tzinfo = utc
3051+ ),
3052+ "value" : 84.55 ,
3053+ },
3054+ {
3055+ "end" : datetime .datetime (
3056+ 2024 , 10 , 15 , 2 , 0 , tzinfo = utc
3057+ ),
3058+ "start" : datetime .datetime (
3059+ 2024 , 10 , 15 , 1 , 0 , tzinfo = utc
3060+ ),
3061+ "value" : 77.6 ,
3062+ },
3063+ {
3064+ "end" : datetime .datetime (
3065+ 2024 , 10 , 15 , 3 , 0 , tzinfo = utc
3066+ ),
3067+ "start" : datetime .datetime (
3068+ 2024 , 10 , 15 , 2 , 0 , tzinfo = utc
3069+ ),
3070+ "value" : 119.48 ,
3071+ },
3072+ {
3073+ "end" : datetime .datetime (
3074+ 2024 , 10 , 15 , 4 , 0 , tzinfo = utc
3075+ ),
3076+ "start" : datetime .datetime (
3077+ 2024 , 10 , 15 , 3 , 0 , tzinfo = utc
3078+ ),
3079+ "value" : 165.45 ,
3080+ },
3081+ {
3082+ "end" : datetime .datetime (
3083+ 2024 , 10 , 15 , 5 , 0 , tzinfo = utc
3084+ ),
3085+ "start" : datetime .datetime (
3086+ 2024 , 10 , 15 , 4 , 0 , tzinfo = utc
3087+ ),
3088+ "value" : 173.64 ,
3089+ },
3090+ {
3091+ "end" : datetime .datetime (
3092+ 2024 , 10 , 15 , 6 , 0 , tzinfo = utc
3093+ ),
3094+ "start" : datetime .datetime (
3095+ 2024 , 10 , 15 , 5 , 0 , tzinfo = utc
3096+ ),
3097+ "value" : 182.97 ,
3098+ },
3099+ {
3100+ "end" : datetime .datetime (
3101+ 2024 , 10 , 15 , 7 , 0 , tzinfo = utc
3102+ ),
3103+ "start" : datetime .datetime (
3104+ 2024 , 10 , 15 , 6 , 0 , tzinfo = utc
3105+ ),
3106+ "value" : 204.48 ,
3107+ },
3108+ {
3109+ "end" : datetime .datetime (
3110+ 2024 , 10 , 15 , 8 , 0 , tzinfo = utc
3111+ ),
3112+ "start" : datetime .datetime (
3113+ 2024 , 10 , 15 , 7 , 0 , tzinfo = utc
3114+ ),
3115+ "value" : 227.47 ,
3116+ },
3117+ {
3118+ "end" : datetime .datetime (
3119+ 2024 , 10 , 15 , 9 , 0 , tzinfo = utc
3120+ ),
3121+ "start" : datetime .datetime (
3122+ 2024 , 10 , 15 , 8 , 0 , tzinfo = utc
3123+ ),
3124+ "value" : 247.83 ,
3125+ },
3126+ {
3127+ "end" : datetime .datetime (
3128+ 2024 , 10 , 15 , 10 , 0 , tzinfo = utc
3129+ ),
3130+ "start" : datetime .datetime (
3131+ 2024 , 10 , 15 , 9 , 0 , tzinfo = utc
3132+ ),
3133+ "value" : 260.92 ,
3134+ },
3135+ {
3136+ "end" : datetime .datetime (
3137+ 2024 , 10 , 15 , 11 , 0 , tzinfo = utc
3138+ ),
3139+ "start" : datetime .datetime (
3140+ 2024 , 10 , 15 , 10 , 0 , tzinfo = utc
3141+ ),
3142+ "value" : 272.87 ,
3143+ },
3144+ {
3145+ "end" : datetime .datetime (
3146+ 2024 , 10 , 15 , 12 , 0 , tzinfo = utc
3147+ ),
3148+ "start" : datetime .datetime (
3149+ 2024 , 10 , 15 , 11 , 0 , tzinfo = utc
3150+ ),
3151+ "value" : 279.58 ,
3152+ },
3153+ {
3154+ "end" : datetime .datetime (
3155+ 2024 , 10 , 15 , 13 , 0 , tzinfo = utc
3156+ ),
3157+ "start" : datetime .datetime (
3158+ 2024 , 10 , 15 , 12 , 0 , tzinfo = utc
3159+ ),
3160+ "value" : 277.87 ,
3161+ },
3162+ {
3163+ "end" : datetime .datetime (
3164+ 2024 , 10 , 15 , 14 , 0 , tzinfo = utc
3165+ ),
3166+ "start" : datetime .datetime (
3167+ 2024 , 10 , 15 , 13 , 0 , tzinfo = utc
3168+ ),
3169+ "value" : 263.88 ,
3170+ },
3171+ {
3172+ "end" : datetime .datetime (
3173+ 2024 , 10 , 15 , 15 , 0 , tzinfo = utc
3174+ ),
3175+ "start" : datetime .datetime (
3176+ 2024 , 10 , 15 , 14 , 0 , tzinfo = utc
3177+ ),
3178+ "value" : 252.27 ,
3179+ },
3180+ {
3181+ "end" : datetime .datetime (
3182+ 2024 , 10 , 15 , 16 , 0 , tzinfo = utc
3183+ ),
3184+ "start" : datetime .datetime (
3185+ 2024 , 10 , 15 , 15 , 0 , tzinfo = utc
3186+ ),
3187+ "value" : 226.78 ,
3188+ },
3189+ {
3190+ "end" : datetime .datetime (
3191+ 2024 , 10 , 15 , 17 , 0 , tzinfo = utc
3192+ ),
3193+ "start" : datetime .datetime (
3194+ 2024 , 10 , 15 , 16 , 0 , tzinfo = utc
3195+ ),
3196+ "value" : 187.41 ,
3197+ },
3198+ {
3199+ "end" : datetime .datetime (
3200+ 2024 , 10 , 15 , 18 , 0 , tzinfo = utc
3201+ ),
3202+ "start" : datetime .datetime (
3203+ 2024 , 10 , 15 , 17 , 0 , tzinfo = utc
3204+ ),
3205+ "value" : 175.24 ,
3206+ },
3207+ {
3208+ "end" : datetime .datetime (
3209+ 2024 , 10 , 15 , 19 , 0 , tzinfo = utc
3210+ ),
3211+ "start" : datetime .datetime (
3212+ 2024 , 10 , 15 , 18 , 0 , tzinfo = utc
3213+ ),
3214+ "value" : 171.03 ,
3215+ },
3216+ {
3217+ "end" : datetime .datetime (
3218+ 2024 , 10 , 15 , 20 , 0 , tzinfo = utc
3219+ ),
3220+ "start" : datetime .datetime (
3221+ 2024 , 10 , 15 , 19 , 0 , tzinfo = utc
3222+ ),
3223+ "value" : 170.12 ,
3224+ },
3225+ {
3226+ "end" : datetime .datetime (
3227+ 2024 , 10 , 15 , 21 , 0 , tzinfo = utc
3228+ ),
3229+ "start" : datetime .datetime (
3230+ 2024 , 10 , 15 , 20 , 0 , tzinfo = utc
3231+ ),
3232+ "value" : 160.1 ,
3233+ },
3234+ {
3235+ "end" : datetime .datetime (
3236+ 2024 , 10 , 15 , 22 , 0 , tzinfo = utc
3237+ ),
3238+ "start" : datetime .datetime (
3239+ 2024 , 10 , 15 , 21 , 0 , tzinfo = utc
3240+ ),
3241+ "value" : 115.61 ,
3242+ },
3243+ ]
3244+ }
3245+ },
3246+ "currency" : "SEK" ,
3247+ "end" : datetime .datetime (2024 , 10 , 15 , 22 , 0 , tzinfo = utc ),
3248+ "start" : datetime .datetime (2024 , 10 , 14 , 22 , 0 , tzinfo = utc ),
3249+ "updated" : datetime .datetime (
3250+ 2024 , 10 , 14 , 11 , 17 , 2 , 702631 , tzinfo = utc
3251+ ),
3252+ },
3253+ )
0 commit comments