()
| 1251 | |
| 1252 | |
| 1253 | def test_fstring_concat(): |
| 1254 | original_var_with_data = LiteralVar.create( |
| 1255 | "imagination", _var_data=VarData(state="fear") |
| 1256 | ) |
| 1257 | |
| 1258 | immutable_var_with_data = Var( |
| 1259 | _js_expr="consequences", |
| 1260 | _var_data=VarData( |
| 1261 | imports={ |
| 1262 | "react": [ImportVar(tag="useRef")], |
| 1263 | "utils": [ImportVar(tag="useEffect")], |
| 1264 | } |
| 1265 | ), |
| 1266 | ) |
| 1267 | |
| 1268 | f_string = f"foo{original_var_with_data}bar{immutable_var_with_data}baz" |
| 1269 | |
| 1270 | string_concat = LiteralStringVar.create( |
| 1271 | f_string, |
| 1272 | _var_data=VarData( |
| 1273 | hooks={"const state = useContext(StateContexts.state)": None} |
| 1274 | ), |
| 1275 | ) |
| 1276 | |
| 1277 | assert str(string_concat) == '("fooimaginationbar"+consequences+"baz")' |
| 1278 | assert isinstance(string_concat, ConcatVarOperation) |
| 1279 | assert string_concat._get_all_var_data() == VarData( |
| 1280 | state="fear", |
| 1281 | imports={ |
| 1282 | "react": [ImportVar(tag="useRef")], |
| 1283 | "utils": [ImportVar(tag="useEffect")], |
| 1284 | }, |
| 1285 | hooks={"const state = useContext(StateContexts.state)": None}, |
| 1286 | ) |
| 1287 | |
| 1288 | |
| 1289 | var = Var(_js_expr="var", _var_type=str) |
nothing calls this directly
no test coverage detected